Add support for multiple Docker API versions

Add support for multiple server API versions, including the changes made
to the keys returned when inspecting an image in 1.12
(https://github.com/dotcloud/docker/commit/68fb7f4b744bf71206898d32fe203556a6261e5d).

Fixes #106
client: remove some comments
container: fix test
client: remove some other comments
misc: reorder imports
event: fix golint warning
client: add docs for ApiVersion
client: skip version checking in unversioned client

Also added some tests.
client: fix hijack behavior

Related to 9bfe329389e8b87f98dc79dd2849c4af40196c29.
container: fix documentation of AttachToContainerOptions
Container.Memory should be float64, otherwise unmarshal will complain
Merge pull request #111 from jakolehm/master

Container Config struct Memory should be float64
authors: add Jari Kolehmainen
container: also use float64 for MemorySwap
testing/server: add method to mutate the state of a container
testing/server: return the proper ExitCode on waitContainer
travis: build on go 1.3
testing: document MutateContainer
testing/server: simplify the failures logic
testing: fix some golint warnings