Use BreakIterator for Break, abstracted as providing a word stream

Reimplemented of what @hellyguo did in Merge Request #29 for Line Breaking.