Refine results vizualization

* Add utility method of Result model to return normalized election
  type to match the types used in the vizualization
* Add method to Results collection return an array of the counts of
  elections of each type
* Create reusable d3 drawing function for viz and wrap it in a view.
* Add separate stylesheet for viz.
* Use d3 for the visualization slider control. The jQuery UI slider widget,
  which uses percent widths to calculate the snap positions of the handle,
  didn't easily line up with the bars or year ticks in the d3-based
  visualization. Use a solution based on the d3 brush control
  (http://bl.ocks.org/mbostock/6232620 is a good reference implementation)
  instead.
* Move legend to right-hand-side of visualization instead of the top.

Addresses https://github.com/openelections/openelections.github.io/issues/23