fix(scheduling): Correct the ConditionMachineOf behavior (mostly)

* Stop creating job offers in the agents, just clear a job's target
* Add EventJobUnscheduled, facilitating communication of need to reschedule
* Only clear a job's target if it the target is known
feat(payload): support timer units

* Allow users to submit systemd timer units
* Add a default peer to systemd timer units similar to the
  handling of socket units
feat(fleetctl): assume .service if not provided, like systemctl.

It also turns slashes into dashes, following systemd's criteria:
http://cgit.freedesktop.org/systemd/systemd/tree/src/shared/unit-name.c#n479
Merge pull request #305 from bcwaldon/timer-units

Support timer units
Merge pull request #343 from bcwaldon/ConditionMachineOf

fix(scheduling): Correct the ConditionMachineOf behavior (mostly)
fix(fleetctl): Make fleetctl stop/unload more helpful

Like load and start, unload and stop should block on success.
Additionally, unload should attempt to stop a job before
fully unloading it.
fix(functional): parse new list-units output
fix(functional): fix TestScheduleConflicts
fix(agent): start job if target state is launched
fix(test): separate submit from start in signed-request test
Merge pull request #349 from bcwaldon/fleetctl-stop-unload

Make fleetctl stop/unload more helpful
Merge pull request #345 from bcwaldon/fix-functional-tests

Fix functional tests
doc(agent): Explain why we manually publish state
Merge pull request #351 from bcwaldon/manual-refresh-state

Explain why we manually publish state
fix(purge): Simplify graceful agent shutdown
Merge pull request #332 from bcwaldon/fix-agent-shutdown

fix(purge): Simplify graceful agent shutdown
Merge pull request #300 from calavera/assume_service

feat(fleetctl): assume .service if not provided, like systemctl.
fix(pkg): Fail gracefully when unable to detect homedir

ParseFilepath may fail to get the current-user home directory, and return
path like '~/xxx'. Point to current directory when failing, and log it.
docs(unit-files): remove note about [Install] section
Merge pull request #357 from robszumski/update-unit-docs

docs(unit-files): remove note about [Install] section