Time axis

A better time axis. This is not ready yet, and still has a few bugs, but I'm making this PR so it's easier to get feedback.

Here are some pictures:
![screen shot 2014-07-16 at 6 36 34 pm](https://cloud.githubusercontent.com/assets/4107323/3607870/d07da292-0d52-11e4-98ff-7418e039281c.png)
![screen shot 2014-07-16 at 6 34 28 pm](https://cloud.githubusercontent.com/assets/4107323/3607871/d1b1a870-0d52-11e4-9418-576a00c8efb9.png)
![screen shot 2014-07-16 at 6 35 31 pm](https://cloud.githubusercontent.com/assets/4107323/3607872/d56649da-0d52-11e4-8684-ca58526c81d8.png)
![screen shot 2014-07-16 at 6 36 07 pm](https://cloud.githubusercontent.com/assets/4107323/3607873/d70e4166-0d52-11e4-9ff0-e29e26864a47.png)

conventionally we force the orientation to lowercase immediately after receiving it, so that "BOTTOM" is still valid