Simplified event handling, and more docs