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
fix(job): Allow state transitions to skip

A client can set the target state of a job to launched
while the actual state is inactive (or vice versa).
fix(fleetctl): Communicate all timeout errors when blocking
Merge pull request #358 from bcwaldon/multistate-transitions

Allow job state transitions to skip intermediate states
refactor(event): Drop receivers from event filters where unnecessary
Merge pull request #360 from bcwaldon/drop-receivers

refactor(event): Drop receivers from event filters where unnecessary
refactor(agent): Drop unused method GetOffer
refactor(agent): Track bids in a map
refactor(agent): Rename OfferResolved to DropOffer
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