Update to docker-py 0.3.1

From https://github.com/dotcloud/docker-py/commit/7f55a101f813f3e96413d1b577e98d9467b0bffc

This now requires Docker 0.9 or greater.
Fix build output

docker-py now streams us the raw JSON events, so we have to replicate
the Docker client's progress logic.

On the bright side, we now have well-behaved progress bars when pulling
an image during `fig build` (no more ski slopes) and `fig up` (no more
silence).
Set "VolumesFrom" when starting containers

This is necessary when working with Docker 0.10.0 and up. Fortunately,
we can set it both when creating and starting, and retain compatibility
with 0.8.x and 0.9.x.

recreate_containers() is now responsible for starting containers, as
well as creating them. This greatly simplifies usage of the Service
class.
Update docker-py

Using commit:
https://github.com/aanand/docker-py/commit/b31bb4d879c8ecc37491edb9f56369c513577918
Update docker-py APIError imports
Fix regression when mounting volumes

Caused by
https://github.com/dotcloud/docker-py/commit/77fec67c608d0839a795f6eb807c9df2fd5bfd45
Split tests into unit and integration
Use Orchard to run integration tests
Update docker[-osx] version in install docs
Merge pull request #186 from orchardup/update-docker-py-7f55a101f813f3e96413d1b577e98d9467b0bffc

WIP: Docker >=0.9 support, docker-py 0.3.1