Improve visual height and vertical alignment of caret

Implementation makes judicious use of the cursor's selection and
getClientRects to compute small adjustments necessary to make the
caret more closely match the browser caret positioning.

At the moment, each cursor must be re-fixed after any operation that
may affect the line height of the caret (e.g., removing a text char may
place cursor next to a larger text character)

This implementation has been tested with
- Forward & backward selections
- Wrapped text & white space
- Image deletion
Update remote caret vertical alignment when moved
Improve commenting around complex selection rectangle calculation in Caret
Change minimum caret size to a font size of 6pt
Revert unneeded modifications to Cursor and OdtCursor
Merge pull request #6 from peitschie/caret-layout-improvement

Improve visual height and vertical alignment of caret
refactor StyleNameGenerator into ObjectNameGenerator
- moved getAllStyleNames from Formatting to ObjectNameGenerator
- renamed StyleNameGeneratorTest to ObjectNameGeneratorTest and added a couple of more unit tests
Add method to remove entry from zip
Add OpSetBlob and OpRemoveBlob
add support for inserting inline images into text document

TODO: eliminating duplicates, resize image to fit in table cell
Add insert image button to the editor