Dylan/charts bugs

This includes @bigsley's refactoring work, my fixes to that, a centering option for bar charts so they can be rendered with end or start of period data as well as middle of period data, and a fix for rounding errors on labels.

@azirbel @bigsley