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)".
Cleanup of focus.js:

1. Remove dojo/on dependency.

2. Check for events in capture phase rather than bubbling phase.
This is necessary since focus/blur don't bubble (on spec-obeying browsers),
and is also good for the pointerdown event in case someone calls stopPropagation().

3. Use dpointer so I only have to listen for the pointerdown event.

4. Remove some code about ignoring certain focus events.
This was from https://bugs.dojotoolkit.org/ticket/9735 and dealt with the
onactivate event that we are no longer using.
Get focus.html test working; still needs to be converted to intern.
Fix focus.js lint errors and improve test.
Test and fix focus manager popup handling.
remove remaining delite references to dui, fixes #68
copy asudoh technique to avoid needing intern.browser.js file
dojo/has --> requirejs-dplugins/has
Use native methods rather than dojo/on.

Can't use jQuery's .trigger() because it doesn't notify listeners
registed with addEventListener().  See http://bugs.jQuery.com/ticket/11047.

Also, can't use jQuery's .on() for custom events because it erases the properties
that we added to the event object, such as evt.invalidatingProperties.
Technically, they're available through evt.originalEvent, but that's not what
users expect.  Note that if we used jQuery's .trigger() method, the custom
properties would be easily available to jQuery's on() method.

Basically, jQuery's trigger() and on() work well together, but you can't
mix and match them with native methods.
remove dependency on dojo/_base/lang.getObject()
move dojo/keys to delite, to break dojo dependency
jshint fixes for keys.js