Use a dropdown
Typo
Dispatcher / events reliability improved
Don't raise events from the model. Do it from an observer.
Docs
Do it in the observer
defalt methods
Formatting
Docs / cleaning up