Double buffered events

Resolves #34 
- Added a simple double-buffering system to event queues

Resolves #35
- Added generic UpdaterJob to invoke Update() on target object