Feature/range1d datetime

This will require a bit of discussion, especially around the Date property.

Closes https://github.com/ContinuumIO/bokeh/issues/635
I can wax philosophical on why I think method invocation on numeric literals is tricky, but I don't know if this is the right forum for it. :-)  The fundamental problem is that the "." symbol was already used by mathematicians long before it got overloaded as attribute access by computer programmers.  For math literals, the dot must bind extremely closely, i.e. "1 + 2.3" can never ever possibly be interpreted as "(1+2).3".  So, dot is not merely another operator in math.  However, for programming, the dot (for member access) has the nearly the lowest precedence, and rightfully so.

Consider tokens such as "2.e3", "2.0e3.2", "2.0e3.foo()", etc.

In essence, the confusion stems from the fact that there are really *two* dots: the dot literal, which participates in numeric literals and has deep historical mathematical meaning, and the dot member access operator, which works uniformly on all objects except when it aliases with the dot literal, in which case the "numeric" dot takes precedence.

Ultimately, I'd argue from the Principle of Least Surprise: most programmers that are likely to encounter your code come from languages where methods are not valid on integer and floating-point literals.