Dialog

Work in progress to support Dialog by adding a "center" orientation argument to delite/place and delite/popup (and thus to HasDropDown).

Builds on HasDropDown changes from #307.

Still needs:

1. code for repositioning and resizing the dialog when the focused node changes (i.e. when the keyboard is shown/hidden), and when the viewport changes size (phone rotated).   Maybe expand on _repositionAll().
2. add test for auto-sizing (large centered node)
3. create DialogBase class: tab handling (looping from last focusable element to first)
4. modal support (using DialogUnderlay, plus some code from DialogLevelManager

> Why do you think it should return an object, and what object would you like it to return? 

I was basically thinking it should return an object because in my case KeyNav was accessing a property on the returned value (undefined). But of course I'm happy with a different solution.

> You mentioned the code at https://github.com/wkeese/delite/blob/dialog/HasDropDown.js#L484 but that's for when autoWidth == true or forceWidth == true, and those options make no sense with an orient==center dialog.

So your point is that the instance of HasDropDown needs to avoid some combinations of values on widget's properties (for instance, should not set both dropDownPosition and autoWidth or forceWidth to true. My take on it: 
I would think there are 2 regular ways to handle incompatible values of parameters:
* Make some of the parameters no-op if another param has an incompatible value. In our case, autoWidth and forceWidth could be no-op if the position is center.
* Reconciliate the incompatible properties (as done by other widgets).
The third way to handle it, which is the current way, doesn't seem nice to me: the code throws an error in such a case (and the error doesn't give a hint about the incompatible parameters).

Besides that, I'll look further into it but at this stage it's not clear to me why autoWidth/forceWidth would be by nature incompatible with a center dialog.