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.
job.JobPayload is dead; long live unit.Unit

Previously, JobPayload was ostensibly an abstraction to allow Jobs to
support different kind of backends. However, it was never truly
abstract enough to support anything other than Units. This resulted in a
lot of glue code and inconsistencies in external and internal
interfaces.

This change completely rips out JobPayload and replaces most uses of it
with a slightly more robust Unit (essentially the two are collapsed).
There are also certain cases (e.g. signature verification) where it now
makes more sense for the object to be the Job rather than the Unit.

Finally, this change moves to storing all Units in the Registry by their
content rather than their name. Specifically it uses sha1 hashes of the
Unit's contents.
chore(sign): remove unused parseString function
refactor(test): fix tests after rebase
refactor(sign): remove all payload references
refactor(registry): relocate legacy serialization logic to registry