agent: add UnitStatePublisher.Purge
Merge pull request #787 from bcwaldon/purge-USP

agent: add UnitStatePublisher.Purge
agent: simplify desired state construction
agent: move task-related code to task.go
agent: serialize tasks through taskManager
agent: model dependent tasks using taskChains
Merge pull request #755 from bcwaldon/serialize-tasks

Serialize Agent tasks
registry: publish UnitState with TTL

Fix #783
squash: actually set TTL on new state key