Allow nonunique x/y values on BarRenderer/HorizontalBarRenderer

Previously data binding was keyed on the x-value, so if bars shared
the same x-value only the first would be drawn (The same thing for
shared y-values on HorizontalBarRenderer).

Close #435.