Merge pull request #32 from milesj/master

Passing tests
Improved the Annotator by returning a list of methods with annotations.
Added a Subject interface that all Emittable classes will need to implement.
Required the Emittable trait to require Subject.
Moved on() and off() functionality to the Subject.
Added an ObserverAnnotation that handles easy wiring of observers.
Update packages with Subject changes.
Merge pull request #33 from milesj/observer-anno

Observer Annotation