Create scope for docker client specific errors

With more granular and specific exceptions user
will be able to handle errors properly.

Also changed raising of Exception to more specific
TypeError which python raises in case of wrong
arguments.
Moved APIError exception to docker.errors module.
Merge pull request #191 from rustyrobot/master

Create scope for docker client specific errors