Serialize event dispatch

Serializing event dispatch will help the operation of the Agent in two major ways:
1. detection/management of etcd connectivity in agent/engine much simpler
2. systemd jobs put in queue in same order as etcd log

I'm not worried about performance impact here, as we're just serializing the glue between etcd and systemd. The Agent is not blocking on the jobs it submits to systemd.