refactor(agent): Clean up job state tracking

* Stash job state using TrackJob
* Track target state of all jobs scheduled locally
refactor(agent): Quit calling to the registry on Purge
fix(agent): Publish target states in Agent debug dump
fix(test): fix/simplify TestConflictsWith
refactor(agent): Simplify AgentState API

* Reduce the number of exported AgentState methods
* Move locking logic into AgentState
Merge pull request #362 from bcwaldon/agent-refactor

Various Agent refactoring
refactor(agent): Simplify logging in agent pkg
refactor(engine): Simplify logging in engine pkg
refactor(event): Simplify logging in event pkg
refactor(machine): Simplify logging in machine pkg
refactor(registry): Simplify logging in registry pkg
refactor(sign): Simplify logging in sign pkg
refactor(systemd): Simplify logging in systemd pkg
refactor(pkg): Simplify logging in pkg pkg
style(logs): clean up a few typos in log messages
Merge pull request #364 from jonboulle/cleanup

Clean up a few typos spotted in #362
fix(sign): refuse to create signatures or verifiers with empty keyring
Merge pull request #366 from jonboulle/empty_keyrings

fix(sign): refuse to create signatures or verifiers with empty keyring
feat(X-ConditionMachineMetadata): Add conditional requirements to the unit file.
Merge pull request #162 from calavera/condition_machine_metadata

Add `X-ConditionMachineMetadata` to the unit file.