Don't bubble 'onKey' and 'onText' events, just delegate method calls

In the same way most of the other cursor methods now delegate to methods on surrounding nodes, instead of bubbling `'onKey'` and `'onText'` events, just delegate them to `cursor.parent`.

That's basically already the case with `'onText'`; `'onKey'` takes a little more refactoring.