Code cleanup for clarity.

* added braces to single line conditionals
* removed redundant argument to count() when already in closure
* tweaked some comments
broke out character truncation tests for clarity
removed count argument that dupes closure value
Fix for Zero word bug inc. test. Clearer semantic separation of char and word count work
broke apart count() from isAtLimit() check
moved options type state into the options object
added tests for tagless input
more state clarity
single setup for trackedState, comment changes
fix for trailing tags in zero word case
Fixed trailing tags issue in characters mode.

* removed characters + 1 hack
* switched order of limit check and character addition
* introduced one bit of weirdness requiring spaces after final word to be trimmed - but this should be solvable and i judge it worth it for the fixes of above edge cases in functionality and behaviour!
Merge pull request #16 from cgiffard/cleanup_branch

bug fixes and cleanup.