Support setting the initial value of a text field input

 - Support setting the initial value of a text field input
   via a defaultValue prop.
 - Enable owner to inject onChange, onBlur, onFocus handlers
Change floating label color when focused

When a text input is focused, the floating label
color should match the underline color of the control.
Implement text input field animations

 * Implement animation of the underline when
   the user selects the input field. The focused underline
   spills from the point of interaction if focused via
   mouse or touch

 * Implement the cursor fade and collapse animation when
   the user focuses the input field if the content is empty

 * Add display names to the CSS styles for easier debug-ability

 * Change the way font sizes and margins are specified to use
   em-based rather than px-based units in several places.

   This more closely matches Google's current Polymer Paper
   elements' CSS and will support better handling if the user
   opts for a different font size.
Only show cursor block animation when focusing with mouse or touch
Show input underline animation on mobile

Show the input underline animation when the input is focused
via either mouse or touch
Merge pull request #64 from robertknight/text_field_ui

Text field component enhancements