[1754] Better keyboard controls for tipping

This PR resolves #1754. Thanks @Lips for the YouTube video; it really helped understand what you were running into.

Now when tipping someone:
+ pushing enter submits your change
+ pushing escape cancels the change
+ when the user starts typing and then pauses for 1 second, the input is validated (enabling the "confirm" button)

This PR also changes the HTML5 `step` value from `0.25` to `0.01` because according to the spec `step` is meant for validation, so anything between 25 cent increments was considered wrong.

One last thing. I changed the tip `<input>` field from this width:

![screen shot 2013-12-23 at 10 39 05 pm](https://f.cloud.github.com/assets/688886/1804520/751f2374-6c55-11e3-98ac-565a30ec1d06.png)

To this width:

![screen shot 2013-12-23 at 10 39 31 pm](https://f.cloud.github.com/assets/688886/1804521/7bc3bb54-6c55-11e3-89c4-198783af23ca.png)