TokenImportActivity: Allow importing SecurID tokens from other apps

Add intent filters that let OpenConnect process URLs in the form:

    http://127.0.0.1/securid/ctf?ctfData=28708...
    http://rsa.com/android/token/ctf?ctfData=23049...
    com.rsa.securid://ctf?ctfData=26137...
    com.rsa.securid.iphone://ctf?ctfData=28978...

This will prompt the user to unlock the token (if applicable) and then
it will store the token string in an existing or new VPN profile.

Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
OpenConnectManagementThread: Clean up server cert validation logic

Move the logic into OpenConnectManagementThread and use common functions
to handle both "Just once" and "Always accept" scenarios.  Allow multiple
SHA1 hashes to be saved in the profile, in case the gateway(s) are set
up to redirect users to different hosts.  Clear accepted certs when the
user purges the profile's saved form data.

Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
VpnConnector: Don't update stats display until it is valid

Calculating the delta (data rate) requires at least two samples.

Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
external: Sync with openconnect rev 2695c65

Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
libs: Sync with latest openconnect sources

Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
AuthFormHandler: Adapt to libopenconnect API change

Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
TokenImportActivity: Make sure preference screen reflects changes

Fix a couple of different bugs related to TokenImportActivity updating
the VPN profile preferences:

 - IDX_TOKEN_STRING was negative, so onActivityResult() was never called.

 - The software_token spinner value was not refreshed when the system
"don't keep activities" setting was disabled.

 - When the user clears an existing token, it makes sense to change
software_token to disabled.  But if the user just backs out of the
activity (e.g. right after he has enabled "securid") we should leave the
setting as-is.

Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
OpenVpnService: Expose more connection info to the UI clients

Allow them to query IP addresses, final server hostname, and connection
uptime.

Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
StatusFragment: Redo the user interface

Add uptime, TX/RX stats, IP info.  Clean up the layout so that the
LinearLayout views don't shift around when the width of the text views
change.

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