An initial pass at a generic emitter

This emitter was designed to work without the use of an activerecord
model. It is definitely a bring your own data situation.

**This pull request is in progress, review as you see fit but keep in mind that this code is evolving**
I like this, we should definitely start documenting our function more often :)