Add support for multiple Docker API versions

Add support for Docker API v1.12

Fixes #106
Ah, makes sense. Let's keep it on Client.

Let's just implement it so the client always send the version in the request. But there's a problem with the case 1, where the user doesn't specify the version. Which URL would be used to check the server version?

I forgot the SkipVersionCheck case, in the case, I think we should use the "unversioned" URL.

So, this could be the getURL implementation:

```
if c.apiVersion != nil {
  // versioned url
} else {
  // unversioned url
}
```

Then ``checkApiVersion()`` would do all the checks and set the ``apiVersion`` attribute. Will it work or am I missing something? :)

Thanks!