Re-implement form fields and non-jQuery UI layouts in library, using RequireJS. Convert their tests from Ext.Test to Jasmine as well.

Fix a few other things such as uses of createDelegate(), and remove @constructor doc tags where they are not needed.
Add tests/playground.html for testing out components visually.
Add jQuery UI's `position` utility.
Defer check for `target` and either `to` of `effect` configs of the Animation class until `start()` is called. Also add 'complete' event.
Add better animation support for show/hide methods of Component, with hook methods for each step of the process. This is to support Overlay and eventually, Window.

Also fix some Component tests that were previously ignored.
Create new Overlay implementation.
Move Html and Css utility classes into `util` package.
Tweaks to Label implementation.
Add `renderTpl` and `renderTplData` configs, for Component subclasses to initialize their internal markup.

Also change the Css utility's `hashToString()` method to `mapToString()`.
Add build target for concatenation, just to check the filesize after being minified. This build target will not work for production use yet.
Tweak documentation in Overlay.js.
Update archived SectionContainer.js file for Css.hashToString() -> Css.mapToString() change.
Move "base" stylesheets into css/base/, and create a "theme" stylesheet in css/theme/basic/
Rename old Button implementation to Button_jQueryUI.js
Add new Button class (which doesn't use jQuery UI).
Shorten implementation of Css.mapToString() using Lo-Dash.
Add `attrMapToString()` method to Html utility.
Add `getRenderAttributes()` method to Component, and utility new Html.attrMapToString() utility method.
Add icon support for Button, and add ToolButton class for Panel headers.
Implement Panel.