DisplayContainer: fix comment about emit()
Change HasDropDown to use dpointer rather than dojo/touch,
and to use this.on() rather than dojo/on.

Fixes #129.
Don't have methods named after events, because jQuery will call those methods
when the event is fired.  Disappointingly, jQuery does manual triggering of events,
rather than calling dispatchEvent().
Refactor and enhance KeyNav.

- Efficient implementation of _getNext(), so subclasses don't need to implement it.
- _getFirst(), _getLast(), _getNavigableChildren() removed.
- Removed dojo/on and dojo/query dependencies by using this.on(), and manually implementing
   the focusin event delegation.

Migration notes:

- Subclasses should stop defining or _getNext(), _getFirst(), and _getLast(), and should stop referencing
  _getFirst() and _getLast().
  In particular, their implementations of _getNext() may not work anymore; there are new requirements
  that it take a dir parameter, and also that that instance._getNext(instance, 1) gets the first child,
  and instance._getNext(instance, -1) returns the last.
- Be sure to define childSelector.  It was always required, but now may be even "more necessary"
  than before.
Remove Widget#isFocusable() and KeyNav#_get*FocusableChild() methods.

These methods seem to no longer be needed.
If a KeyNav contains disabled children (like disabled buttons in a toolbar),
you should be able to filter them out via the childSelector, ex: ".button:not(disabled)".