Theme refactoring.

* delite/themes/{{theme}}/global.less
  -- defines tags selectors + custom CSS classes for the theme
  -- imports delite/themes/common/global.less (custom CSS classes common to all themes)
* removed common_template
  -- use theme/global.less or common/global.less
* renamed css3.less ==>  mixins.less
* transparently load {{theme}}/global file of the current theme: widgets don't have anymore to explicitly ask the loader to load common theme CSS definitions.
* fix regression test failures from 6b587f9cac7b7cdfbf30341d85f85dca4141c7c9
* fix popup test on iOS: increased height to make sure buttons are visible

Fixes #134, #137.
don't include dstore in code coverage report
move defer() to Destroyable so Invalidating can use it
leverage Destroyable.defer() in Invalidating and add a test case
to verify refresh is not called after destroy
add less mixins.
- common: text-ellipsis
- bootstrap: tab-focus
Add new events to warn possible controller that we are going
to hide a pane, and add a hide() method counterpart to the show()
method.  Fixes #144.
Fix jshint errors and run jshint from travis, fixes #146.
Some functions need to be simplified; for now added jshint maxcomplexity override.
jshint fixes that mysteriously disappeared from previous check in, refs #146
rename delite/themes/load to delite/theme
stop using lang.hitch() in delite, refs ibm-js/sdk#4
use standard dstore dependency for bower now that SitePen/dstore#8
is closed. Also dstore is not required per-se to run delite
(i.e. you can use your own store from another project as long as
they comply to dstore specs). This is "just" needed to run the tests
so move the dependency to devDependencies
Use requirejs/text and make handlebars.js loadable in node.js, fixes #148.
Also switch Intern tests to run against requirejs, due to requirejs/text#85.
move ExampleWidget to samples/ directory, fixes #98