Reworked bar plot

It is now possible to:
- Stack bars of different colors. In fact this is the default behaviour
  when a color of fill is specified (like R's ggplot)
- Reorder columns in a bar plot by adding a label parameter as so:
  geom_bar(labels=["blip","blop","dyt","båt"]) as discussed here:
  https://github.com/yhat/ggplot/issues/315
- Show only a select few of the columns (as above, just don't include
  all possible x-values)
- Use bar plots when faceting (although faceting overwrites the
  x-labels for some reason: https://github.com/yhat/ggplot/issues/319)
  This addresses https://github.com/yhat/ggplot/issues/196

In order to do this I had to make a few changes.
- Most importantly I added a method '_calculate_global' to stats.py. It
  is not required to implement it in subclasses but for stat_bin it
  makes it possible to read in all labels ahead of time and then when we
  are processing separate groups fill the labels not represented with
  0's.
- I added a new stat class 'stat_bar' which for simple x/y bar plots
  (not histograms) take advantage of '_calculate_global' to deliver
  consistent bar plots when using facets or when stacking colors
- I changed geom_bar to use stat_bar per default and geom_histogram to
  use stat_bin. This differentiates the bar plot and the histogram in a
  way that makes intuitive sense (I would think at least)
- I disabled sorting the x-axis by default to preserve user specified
  label orders. As far as I can see only geom_area needs the x-axis to
  be ordered. I've added code to sort the x-axis inside geom_area.
Sort x-values in geom_line

It turns out that geom_line also expects x-values to be sorted. This
commit moves the function ```_sort_list_types_by_x``` to geom.py and
renames it to ```sort_by_x``` and adds a call to it in ```geom_line```
Sort x-values in geom_line

It turns out that geom_line also expects x-values to be sorted. This
commit moves the function ```_sort_list_types_by_x``` to geom.py and
renames it to ```sort_by_x``` and adds a call to it in ```geom_line```

(amended to no longer break build)
Fixing my failed git rebase attempts

Conflicts:
	ggplot/geoms/geom.py
Changed bar plot to use bin stat on default

In addition the geom_histogram is no longer a separate class
Merge pull request #325 from arnfred/bar

Reworked bar plot