Clean up, refactoring. Rename EventSource to Emitter, begin merging emit() method with handle().
Event handling
==============
Keyboard event propagation
--------------------------
top widget -> focuswidget -> focuswidget's parent -> focuswidget's parent's parent -> ...and so forth
1 top window
4 window
3 container
2 edit box
Other event propagation
-----------------------