Add event stream

Adds event streams along with an emitter behavior.

When the model the emitter is attached to is saved or deleted, an event is pushed to the event stream which can be a redis channel or an amqp exchange etc. This allows other systems in the application to know when data changes.