Axis-related properties:
includeZero
valueRange
labelsKMB
labelsKMG2
pixelsPerYLabel
yAxisLabelWidth
axisLabelFontSize
axisTickSize

How is the y-axis determined?

Dygraph.numericTicks: min, max -> set of ticks for axis
tick = { label: label, v: value }

addYTicks_: min, max -> void
sets the yAxis and yTicks properties of layout_

drawGraph_:
if set, uses this.valueRange_ ([low, high] array)
  -> adds ticks via addYTicks_
  -> sets displayedYRange_

otherwise, calculates a good axis based on minY and maxY.

this.displayedYRange_ is returned by the yAxisRange function.
this is, in turn, used by the toDataCoords and toDomCoords methods.

Path of least resistance:
- in drawGraph_, calculate [minY, maxY] per-series
- write a function to compute y-axes for all series, ensure only two axes.
- make yAxis, yTicks into arrays in layout_
- add a series -> axis mapping to layout_, dygraph
- add code to Renderer to add second axis.
- add optional 'series' parameter to toDomCoords/toDataCoords

This won't be compatible with stacked charts.
