Currently, the certificates present for SSL access must all be
accessible on the local disk. This is inconvenient for some clients
who may already have a pre-baked keystore in hand.

Create different options for retrieving the neccessary SSLContext,
so that the two different options can be used.

Signed-off-by: Nigel Magnay <nigel.magnay@gmail.com>
Change the client configuration so that it can optionally take an
SSLConfig.

Signed-off-by: Nigel Magnay <nigel.magnay@gmail.com>