Initial acceptance test runner.
Better factorization.
Merge forward.
Use the new acceptance test runner in the release process.
Always cleanup the VM.
Handle 500 from stopping a container.

There appears to be a race condition between

- a process dying, a SIGCHLD being sent, and docker processing that signal,
  marking the container as stopped
and
- docker receiving a request to kill a container, checking that the container
  is still alive, and sending the signal.

This partially reverts commit c9a58bdc262d410f90588a3bd0a9dd18feb4bec8.
typo
Handle invalid options better.
Add some docstrings.
Remove shebang.
Factor out vagrant addresses.
Don't accept missing FLOCKER_BOX_VERSION in acceptance testing Vagrantfile.
Add better usage.
Loop until the container is stopped.
Accept missing FLOCKER_BOX_VERSION in acceptance testing Vagrantfile.

Otherwise, 'vagrant destroy' won't work without specifying a version.

This reverts commit 98c52734f1a47986f1aca05a1d12183b6f1438d9.
Remove debug statements
De Morgan: Explain when we keep the nodes around.
Add a comment about the Vagrant insecure_private_key.
Merge pull request #1012 from ClusterHQ/no-such-process-FLOC-1048

Handle internal server error 500 when stopping a container via the REST API

Author: @tomprince 
Reviewer: @wallrj
Fixes https://clusterhq.atlassian.net/browse/FLOC-1048
Merge pull request #1010 from ClusterHQ/acceptance-runner-FLOC-1070

[FLOC-1070] Acceptance test runner.

Author: @tomprince
Reviewers: @wallrj, @adamtheturtle, @exarkun