Merge pull request #51 from spotify/rohan/ssl

Upgrade to Jersey 2.x
Add SSL/TLS support

The DockerCertificates class can now be used to build an SSL context for
communicating with Docker over HTTPS with client/server authentication.
Ignore hostnames when verifying SSL certificates

We just make sure that the certificate is from the correct CA. Hostname
verification is pointless here since everyone is just using self-signed
certs anyway.
README: Document Unix & TLS support/usage
Disable chunked encoding for container start

Don't send requests to start a container to Docker using chunked encoding.

This is to workaround a bug present in Docker 1.2.0, wherein the HostConfig
is completely ignored if sent with chunked encoding.

To enable testing this, we add ContainerInfo.hostConfig(), which returns
the HostConfig we get from inspecting the container.
Run test-docker-ssl container in privileged mode

The test-docker-ssl container runs a Docker instance inside of it. We do
this to ensure we can connect to the instance using SSL.

In some configurations, the instance will fail to start unless it is run
in privileged mode, so now we account for that.

Also, we now check to make sure that the container started successfully
before continuing with the test.
Switch to CircleCI

* Add a CircleCI configuration file.
* Fix up some tests to work properly in their environment.

The primary motivator for this is that we cannot run any sizeable images in
the UML instance we have to use to run Docker in TravisCI. The test for the
new SSL functionality doesn't work with those restrictions.