Factor out the namespace name test. Accept `["name"]` as not namespaced.

References #3076.
`kernel.{createEvent,addEventListener,removeEventListener}` API comments.

References #3076.
Only create the per-event listener array on `addingEventListener`.

References #3076.
Fix the `["name"]` case. Interpret `[]` as namespaced, distinct from `""`.

References #3076.
Track method changes in the kernel registry.

References #1662.
Replace `jQuery.each` with `Object.keys` to remove dependency on jQuery.
Only call `model.callingMethod` until the first driver returns a result.
Remove the unneeded `methodValue` parameter from `model.callingMethod`.
Define `kernel.setMethod` and `kernel.getMethod`.
New utility functions to convert between Handlers and functions.
Implement `settingMethod`/ `gettingMethod`; send changes through the kernel.