Pass all key events to the current constellation frame.
Add KeyboardEvent stub.
Fill in KeyboardEvent.
Dispatch keydown, keyup, and keypress events at appropriate  times.
Implement document focus context and hook it up to click events.
Add single-line text input with no visible cursor.
Flush layout after executing timers.
More documentation.
Fix interfaces test
Short-circuit initFooEvent while dispatching events.
auto merge of #3585 : jdm/servo/input, r=gw

This attempts to implement a bunch of the DOM Level 3 Events spec by implementing the KeyboardEvent interface, the document focus context, and dispatching keyup/keydown/keypress events appropriately. There's also some support for multiline text input that's untested.