Automatically render component when state changes
Add text input component
Add state example with carousel and text input
fix(tests): Requests for /atomic.js resolve correctly

Fixes a problem in the tests where /atomic.js was not resolving correctly.
It now serves the correct file.
Merge branch 'master' of git://github.com/asakusuma/atomic into asakusuma-master

* 'master' of git://github.com/asakusuma/atomic:
  Add state example with carousel and text input
  Add text input component
  Automatically render component when state changes
fix(examples): Fixes a parseInt in page.js to use Radix parameter

Fixes the page.js file so that parseInt will use a radix parameter where
it previously wasn't.
test(Component): Fixes component tests to use new state property

Fixes the component tests to use the new state property. Previously, it
was erroring due to this.states:{} not being set during the test.
feat(PublicAPI): Adds powerful debugging features to Components

This adds Atomic.describe(component, output) to the Atomic Public API.
Previously, debugging was powerful in console.log, but there was no
simple API for getting a component's description and attributes. This
exposes all the displayable utilities via a single interface. If given
a string, it will download the component and display output. If given
a component object, it will use that component for description.

A future revision may wish to also enable typeof === 'function', so
that uninstantiated components can also be described.

A promise is returned which when thenned will expose a JSON representation
of the component's description, ideal for Dust/Handlebars/Template
language of choice for documentation pages.

BREAKING CHANGE: In order to ensure documentation works as expected,
the following methods have had restrictions added:
* trigger: the event name must be specified in the component.events collection
* assign: the element property must be specified in component.elements
* resolve: the dependency must be specified in component.depends
* state: the state being set must be specified in component.states

This affects all components utilizing the trigger/assign/resolve/state methods
feat(Public API): Adds uninstantiated constructors to Atomic.describe

This adds support for uninstantiated components to Atomic.describe. This
enables a user to get the description of a component always through
a consistent interface, regardless of how it was retrieved.