Re #2137 Note about vagrant dns in the test documentation
testing infrastructure, issue #1800: Refactor docker testing using Docker in Docker
Fix build on darwin
Minimal, unintrusive implementation of a cleaner Job API.

* Implement a new package: engine. It exposes a useful but minimalist job API.
* Refactor main() to instanciate an Engine instead of a Server directly.
* Refactor server.go to register an engine job.

This is the smallest possible refactor which can include the new Engine design
into master. More gradual refactoring will follow.
Engine: basic testing harness
Engine: centralize checks for supported architectures and kernel versions
Rename 'GraphPath' to the more logical 'Root'. This does not affect users except for a slight text change in the usage messge
Rename ConfigGetenv to ConfigFromJob
Setup daemon pidfile/cleanup in Server.Daemon() instead of main()
Close sqlite persistent connection on SIGINT, SITERM or SIGKILL
Engine: cleanly log the start and end of each engine job
Engine: Engine.Job() never fails, to mimic the os/exec API (and make usage less verbose)
Update sysvinit script to fix a few inconsistencies and be more useful/correct downstream
- Added volumes documentation
Make /events API send headers immediately

Go's net/http API does not send headers until the first call to
ResponseWriter.Write().  Ordinarily, this is fine, because in most
cases, responses are returned immediately.  However, for the events
API, nothing is written until some event is sent, which causes
timeouts and/or hangs in some HTTP client APIs, which wait for headers
before returning from the "make request" call.
docker stop sends SIGTERM and SIGKILL, docker kill sends SIGKILL
remove some logs from tests
Merge pull request #2453 from dotcloud/remove_logs_from_tests

Testing: remove some logs from tests
update RELEASE-CHECKLIST.md to reflect new changes
do not split last column docker top