Trim leading and trailing whitespace from input data

Trim leading and trailing tabs and spaces on rows as well as leading
and trailing spaces on internal elements. Internal tabs are still not
valid input and headers or date entries with spaces in them are still
valid input.

Added tests to verify the behavior of ChartBuilder.getNewData().
Merge branch 'trim' into refactor