Show "null" values as gaps instead of zero.

Rickshaw uses D3 scales to scale data on the Y-axis. When these
predefined linear and log scales encounter a "null" value in the source
data, they scale the resulting data point to a Y value of 0. This change
wraps the D3 scales in such a way that "null" values are intercepted and
left unchanged, while all other values are passed through to the D3
scale transparently. Since D3 scales are both an object and a function
at the same time (yeah, JavaScript, you crazy, crazy language), this
needs some protoypical inheritance trickery to override the function
part of the scale.