Cleaned up setYScales

Fixed numerous bugs in how the left and right y-axii interact,
including how ChartBuilder determines the left y-axis is unused, which
was flawed if more than one series was charted on the left y-axis.
Layout now works better across the board, though there's an outstanding
issue with the right y-axis base value documented at
https://github.com/Quartz/Chartbuilder/issues/87.

The first half of the method is now simpler, more readable, and
well-documented.

Fixed some other variable caching issues as I found them.