Fixed issue with StartContainerCmd

The accept header was being set incorrectly to text instead of json.
Also added a defensive null check in JsonClientFilter.
Added pause/unpause commands
Fixed startContainer use cases

Using top command instead of true so that the container keeps running
and returns the valid state
Fixed issue with StartContainerCmd

The accept header was being set incorrectly to text instead of json.
Also added a defensive null check in JsonClientFilter.
Merge branch 'master' of https://github.com/NirmataOSS/docker-java

Conflicts:

src/test/java/com/github/dockerjava/client/command/StartContainerCmdTest
.java
Fix merge issue

Fix merge issue
Merge pull request #22 from NirmataOSS/master

Fixes for startContainerCmd
Merge branch 'master' of https://github.com/docker-java/docker-java
Cleanup of model classes
Moved readTimeout and enableLoggingFilter to config object
Added a close method to DockerClient

Give programs using DockerClient an opportunity to release resources claimed
by the http client created inside DockerClient.
Removes username from tests when unused

The field is never used in these tests. It should make it easier to
separate tests that require a docker.io account from those that do not.
Cleans up DockerClient constructor

Just doing a little refactoring of the constructor to make it easier to
read.
Creates an injectable CommandFactory for DockerClient

In order to improve the usability of DockerClient in tests, this
introduces a CommandFactory interface (and default implementation). The
interface can be injected into the DockerClient at construction,
allowing the use of a CommandFactory that returns mock or stub commands
for later test assertions.

I envision that the methods that create the commands from the
DockerClient itself could be deprecated: users of the library could
create the commands from the CommandFactory directly and simply pass
them into the DockerClient#execute method where teh baseResource and
(if appropriate) authConfig would be set on the command before it's
executed.

Issue #25
Adds some getters to command objects

This only adds getters for fields that are of immutable types (Strings,
booleans, ints). For objects that take in Config objects, I'll look at
adding getters in a future commit. Ideally all of these things would be
immutable.

Issue #25
Makes Config a public, immutable class with a builder

This makes Config a public class, so it can be passed into the
DockerClient constructor from code in different packages. It also
makes Config an immutable object and includes a builder for convenience.

Fixes issue #24.
Add ping method
Merge pull request #29 from mfulgo/for-upstream-24

Makes Config a public, immutable class with a builder
Merge branch 'docker-client-closeable' of
https://github.com/kimble/docker-java into
kimble-docker-client-closeable

Conflicts:
	src/main/java/com/github/dockerjava/client/DockerClient.java
t push origin master:Merge branch 'kimble-docker-client-closeable'