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().