cleans up code, start to break out
adjusts tests to reflect each_char stream processing, removes Text object that I no longer need, and does some cleanup