Added undo/redo support and safe side effect prediction for text
manipulation in FloatingTextModel.

Signed-off-by: Jakob Brandsborg Ehmsen <jakobehmsen.github@gmail.com>