Support passing HostConfig to CreateContainer as per version 1.15 of the docker API

The implementation may seem a bit unintuitive: indeed, it would have been easier to add a `HostConfig` field to the `Config` struct.

What argued against doing that was:
* Only `CreateContainer` accepts this field
* Doing so would be confusing: `Container` already contains a `HostConfig` field alongside `Config`. The API users might get confused between `Container.HostConfig` and `Container.Config.HostConfig`

I also thought about adding a new `CreateConfig` type:

```go
type CreateConfig struct {
  *Config
  HostConfig *HostConfig
}
```

And modifying the `CreateContainerOptions` to use this new type instead of `Config`, but this would break the API for all the go-dockerclient users.

That was my thought process. @fsouza , don't hesitate to give feedback if you think this should be done differently.