pkg: accept initial values in New*Set functions
unit: implement FakeUnitManager.GetUnitStates
registry: fill in more FakeRegistry methods
agent: rename AgentState to AgentCache
agent: unexport UnitStatePublisher.PublishAll
agent: use AgentReconciler model to drive Agent
functional: wait 15s for active units

The new agent reconciler slows things down a bit. The functional
tests reliably fail with 10s, and pass with 15s.
agent: drop resource info from cache
squash: s/as/ac/g
squash: remove newOfferCache
squash: fetch jobs once from registry
squash: use helper where necessary
squash: no need for Ali G
squash: s/of the/off the/
squash: drop locks from AgentCache
squash: remove unnecessary AgentCache methods
squash: simplify PurgeJob
squash: simplify the crap out of agentCache
squash: fix functional test docstring
Merge pull request #694 from bcwaldon/agent-reconcile

Agent Reconciler