Remove deprecated code marked for removal in 0.4
selector: desupport `disabled` to reduce code

Use `Selection#allowSelect` instead; serves same purpose
(but is passed a row object and returns inversely)
List / _StoreMixin: Split observe / QueryResults logic from renderArray

* Create _StoreMixin#renderQueryResults for QR/observe logic
* Optimize observer code to not render/push ahead of time, to avoid
  needing to remove later if results are empty or already unrendered
* Make List#renderArray *only* process arrays
* Reduce code in places using renderArray since they no longer need to
  potentially handle promises
* Rename observers to _observers
_StoreMixin: extend row method to return proper id
Replace List#newRow with List#highlightRow

highlightRow is much simpler to use; pass it a row that has been
rendered, and it will highlight it for a configurable duration.
Merge branch 'master' into dev-0.4

Conflicts:
	CHANGES.md
	List.js
	Selection.js
	tree.js
Merge branch 'master' into dev-0.4

Conflicts:
	CHANGES.md
	_StoreMixin.js
	package.json
Update version for dev towards next release
Merge branch 'master' into dev-0.4-update

Conflicts:
	CHANGES.md
	List.js
	package.json
	test/intern/core/OnDemand-removeRow.js
	tree.js

NOTE: This merge purposely leaves out certain tweaks specific to
dojo/store/Observable, since dgrid 0.4 is expected to switch to
dstore and the extra code will no longer be necessary.
ColumnResizer: improve performance of first resize

With ColumnResizer, when you resize a column for the first time in a grid,
the grid would be resized once for each column and then again for the column
you resized.  Now the grid resizes only once.
CHANGES.md: Note improved first-resize performance w/ ColumnResizer
selector: Add Intern unit and functional tests

Includes a utility module with a method for detecting shift+click support,
since it doesn't seem to work through WD with certain versions of IE and FF.
Tests involving shift+click are no-ops in these browsers.
selector: unit and functional test cleanup

* Add test suites to all.js and functional.js
* Add proper teardown and fix formatting in unit test
* Test allowSelect rather than disabled, since the two are redundant and
  disabled will eventually be discontinued
* Remove unnecessary waitFor* calls
* Pass functions to remote.execute calls, not strings
* Make isShiftClickSupported return a boolean for easier use
* Refactor control flow to only call isShiftClickSupported once
* Remove questionable/unsupported case of allowSelectAll + single selection
* Remove unused debugging code
* Chain calls where it doesn't hinder readability
Move functional test utilities into functional folder
CompoundColumns test page: Add grid and form to test combinations

Allows testing with ColumnSet, ColumnHider, and/or ColumnResizer.

Also did some general formatting cleanup.
ColumnHider: break out column-showing logic to _showColumn
ColumnHider: Call resize after applying IE8 workaround
ColumnResizer: Suppress focus outline on resizer node
CompoundColumns: Add logic to support ColumnHider and ColumnResizer

Note that this currently requires that ColumnHider and/or ColumnResizer be
mixed in *before* CompoundColumns, since CompoundColumns will extend
methods from the other two.  This is in contrast to ColumnSet, which needs
to be mixed in *after* CompoundColumns.

Also includes some general cleanup.
Fix a problem with combining ColumnSet, ColumnResizer and CompoundColumns.