Support running tests with SSL.

This adds support for launching a https server either using a
real CA-issued certificate, or a self-signed certificate generated
using OpenSSL. The latter in intended for most testing use cases.