Make scales agnostic to scale type

Previously, many renderers extended NumericXYRenderer, which made the assumption
that the domains of the X and Y domains were numeric. However, there was no
real reason for this assumption; The renderers would operate fine if passed
OrdinalScales. The main requirement is that the scales produce pixel range outputs,
so the renderers are being updated to reflect that. This also makes it somewhat
easier to implement time scales in the future.

A consequence of this change is that some interactions no longer work properly.
However, they needed to be re-implemented as they had become outdated, so they
have been removed for now.
CategoryBarRenderer now also agnostic about Y axis.

Consequently, CategoryXYRenderer has been removed.
Merge pull request #300 from palantir/0.8.0-scale-agnostic-renderers

0.8.0 scale agnostic renderers