Rewrite openconnect plugin to use libopenconnect

Replace most of the fork/exec and output parsing with usage of
libopenconnect for authentication. The actual connection establishment
is still done by calling the openconnect binary using the token obtained
via the use of the library.

The library has a proprietary main loop and provides only a synchronous
API, which is worked around by using a thread to run the authentication.
Events from the library are delegated to the main thread via main loop.
3 files changed