Add an axis backed by a general polynomial
Change contract of rawValue()

Some axis types cannot support calibrated value to raw value calcs. Think of
y = x^2. If given a calibrated y value there are two associated raw x
values. We cannot choose between them. In such cases we now return NaN as
the raw value.
Make update() aware of PolynomialAxis
Add tests for PolynomialAxis
Add a LogLinearAxis class with tests