Fix direct cursor styling behaviour

Recent changes to Formatting.getAppliedStyles return type were not correctly spread through the DirectFormattingController. Update the CC types and fix incorrect type usages in this controller.

To help preserve future sanity, some rough unit tests have been added for the specifically fixed branches ONLY.

Fixes #723.
Why mergeIntoParent and not just remove-from-parent? What child elements could be expected which should survive the removal of the test-helper elements?