* Preserve selection in text story composer after changing font size.
Fixes an issue where input cursor would jump to the end when adding/deleting
text in the beginning or middle of the text and those edits caused font size
to increase / decrease.
That unwanted behavior was caused by replacing the entire `UITextView.attributedText`.
* Ensure entire text story draft has same font after undo / redo operation.
UITextView's undo manager preserves attributes of text being cut / pasted, which
might cause text view to contain fragments with different font.
The solution is to detect when there's more than one font used in UITextView
and re-apply attributes to the entire text if when that happens.