Refactor Slider and Rule to work with the new custom tag (dui-slider/dui-rule) implementation.  The startup() method now takes on more of the rendering role since attributes are defined there.
fix boilerplate.js so has("dojo-bidi") set when dir=rtl
fix bidi support in Button and WidgetBase
Apply initialization parameters after createdCallback() returns.
This means that buildRendering() runs before any user the user defined parameters
are available.

This change is necessary to be forward compatible with browsers that implement
document.register() natively, because in that case programmatic creation (w/out
the syntactic sugar) will be:

var node = document.createElement("dui-slider");
node.max = 10;

Other changes:

- Removed runAfterRender() helper.
- Added preCreate() lifecycle method that executes before buildRendering().
- Fixed a few widgets that were depending on constructor() getting called;
  constructor() doesn't get called anymore with custom elements.
- Removed widgetId attribute setting on nodes.

Open issues:

- _Invalidating is presumably emitting unwanted events for changes that are due to
  initialization parameters; it should only send events for changes after this._started.
- Specifying event handlers declaratively (ex: <dui-button onfoo=...> for custom events
  likely isn't working.

Fixes #20.
automatically chain _introspect()
rename dui-starrating to dui-star-rating