[#81610372][bugfix] Keep caret position in content editable

The content editable component sets the innerHTML
every time the component's `value` property changes.
Firefox doesn't like this and sends the cursor
to the beginning of the node. The component now
keeps track of the caret position.
Remove phase header content editable
Restore content editable component.
Fix spec around Phase title editing
Merge pull request #561 from Tahi-project/content-editable-caret-position

Content editable caret position