Order parameter in boxplot and violinplot

This mainly addresses #17, but does not fix #16, which remains to be done. The full diff is a little noninformative as I moved the `violinplot` code next to the `boxplot` code to make going back and forth easier. I also caught a bug where using `vert=False` in `boxplot` was ignored when adding semantic information to the plot.