Moved the responsibility for saving snapshots (and deciding when to do it) to EventSourcedAggregate.
A snapshotting strategy can now be included in the aggregate's logic.
Added a ServiceContainer component for grouping service functions and providing them with runtime resources via dependency injection.
Migrated index.js to a new, condensed module.exports style.
Updated the README with clarifications for high-level assumptions, such as what format event publishing happens in.
Added a Saga implementation (rewritten from scratch). The event/transition definition format is simpler now (taking the form of a simple tree, constructed with JS object calls).
Changed tryWith so that it no longer tries to save aggregate snapshots itself. Since f185e3, snapshot saving is the sole responsibility of aggregates themselves.
Merge branch 'master' of github.com:rkaw92/esdf

Conflicts:
	EventSourcedAggregate.js
	index.js

Changed the name of the error generated when an event handler is missing during event application.