Autoconnect VPN when possible
Add preference "Enable encrypted internet when LEAP App starts" to the UI and store this in cleartext.
Add a preference "vpn_provider", stored in cleartext. There is no UI element for this option, but it gets changed whenever the user explicitly connects.
The client should attempt autoconnect the VPN if the option "Enable encrypted internet when LEAP App starts" is checked.
On startup of the app, without authentication:
If there is a valid "vpn_provider" (matches a validated provider) and a valid client certificate, then attempt to connect.
If there is no "vpn_provider" or no valid client certificate, prompt user to login, fetch a client cert, update 'vpn_provider' to this provider, connect
Subsequently, whenever the user hits "turn internet encryption on", or whatever we call it, the 'vpn_provider' should be set to the new one we just connected to.
(from redmine: created on 2013-06-10, closed on 2013-06-13, relates #2056 (closed))