Ignore whitespace when adding and validating tags

This commit addresses several bugs related to whitespace:

* You can no longer add a tags which consist entirely of whitespace
* You can no longer workaround the `minChars` validation by adding whitespace

Code changes are pretty minimal. Tests included for both these cases. Lemme
know if you have any questions.