Limited support for function properties in templates.
Supports attributes starting with on, for example onclick="console.log('foo');",
but the attribute value can't contain bind variables, i.e. onclick="console.log('{{foo}}');"
isn't supported.
KeyNav: allow navigation to any descendants, not just widgets
Update CSSState to use standard class names.
Also make baseClass mutable.
Refs #68.
Lifecycle fixes, in particular to fix support for custom scrollableNode (and add unit test cases for it)