main: Make the authgroup picker CLI more user-friendly
main: Make the authgroup picker CLI more user-friendly

Perform case-insensitive partial matches where possible.  Allow the user
to retry if he makes a mistake.

Example usage:

    Connected to HTTPS on vpn.uci.edu
    Please enter your username and password.
    GROUP: [Default-WebVPN|Merage|MerageFull|UCI|UCIFull]:x
    Auth choice "x" not available
    GROUP: [Default-WebVPN|Merage|MerageFull|UCI|UCIFull]:mer
    Auth choice "mer" matches multiple options
    GROUP: [Default-WebVPN|Merage|MerageFull|UCI|UCIFull]:meragex
    Auth choice "meragex" not available
    GROUP: [Default-WebVPN|Merage|MerageFull|UCI|UCIFull]:merage
    Username:fred
    [...]

The same logic also applies to the --authgroup switch.

Signed-off-by: Kevin Cernekee <3105dbb3dd63fbb4f6371cfb04adc6726f76c56b@gmail.com>

cernekee/openconnect,mveplus/openconnect-client,neshema/openconnect,atyndall/openconnect,lins05/openconnect,cernekee/openconnect,brandt/openconnect,atyndall/openconnect,lins05/openconnect,don-johnny/openconnect,atyndall/openconnect,neshema/openconnect,nmav/openconnect-mine,chadcatlett/openconnect,mtmiller/openconnect,mveplus/openconnect-client,mtmiller/openconnect,mtmiller/openconnect,nmav/openconnect-mine,lins05/openconnect,liiir1985/openconnect,mveplus/openconnect-client,matlockx/openconnect,liiir1985/openconnect,brandt/openconnect,neshema/openconnect,chadcatlett/openconnect,don-johnny/openconnect,cernekee/openconnect,nmav/openconnect-mine,matlockx/openconnect,don-johnny/openconnect,brandt/openconnect,mtmiller/openconnect,neshema/openconnect,cernekee/openconnect,brandt/openconnect,liiir1985/openconnect,don-johnny/openconnect,chadcatlett/openconnect,matlockx/openconnect,lins05/openconnect,atyndall/openconnect,chadcatlett/openconnect,liiir1985/openconnect,nmav/openconnect-mine,mveplus/openconnect-client,matlockx/openconnect