api: simplify nested handler construction
api: fix style of Server header assertion
api: Fix an incorrect status code; 406 -> 415

"406 Not Acceptable" is not proper because it is for a request whose
Accept header is not acceptable. Use "415 Unsupported Media Type"
instead.

See <http://tools.ietf.org/html/rfc7231#section-6.5.6> for "406 Not
Acceptable" and <http://tools.ietf.org/html/rfc7231#section-6.5.13> for
"415 Unsupported Media Type".
api: return error generated by validateContentType
api: assert validateContentType wired up
Merge pull request #939 from bcwaldon/hdlr

Handler-related cleanup
Merge pull request #941 from bcwaldon/status-code

StatusUnsupportedMediaType instead of StatusNotAcceptable
systemd: only reload if necessary
systemd: don't reload on unit unload
Merge pull request #944 from jonboulle/944_daemon_reload

call "daemon-reload" only when necessary
fleet: run tests in a docker container
fleetd: log version at start-up
Merge pull request #950 from jonboulle/version

fleetd: log version at start-up
ssh: drop privileges for TestWrongHostKeyFile
engine: all engines now log when a change in ownership is detected.

Engine.lease contains the current lease regardless if the instance is a leader or not.

Fixes #740
Merge pull request #946 from epipho/740-engine-lease-log

engine: all engines now log when a change in ownership is detected.
Merge pull request #951 from epipho/docker-test

fleet: run tests in a docker container
Merge pull request #947 from jonboulle/host_keys_fail

Tests fail in docker
fleetctl: Add restart and ssh-port functionality

Starts and stops a unit in one command.
Adds support to specify SSH port for SSH based commands:
* journal
* status
* ssh
* restart

refs #760