Add support in FF for double line-through

Follows CSS3 standards. Unfortunately, only FF implements this so far.
Merge pull request #758 from peitschie/style-double-strike

Add support in FF for double line-through
Add font-size layout tests
Implement support for style:text-position

style:text-position defines sub and super-script text properties.
Ignore ODT files in the tests directory

ODT files are generally created in this directory as a result of running
the layout tests from the source directory.
Merge pull request #755 from peitschie/style-tweaks

Improve support of sub/superscript
Always update caret location even if it isn't visible

Though the caret visibility may be set to hidden, the caret still has
a client rectangle that can be accessed. It is important to keep this
up-to-date so the scrollIntoView logic works on a range selection even
when blinkOnRangeSelect is false.
Put caret register/remove functions side-by-side for clarity
Bind events directly to caret functions

The Caret itself already has logic to only perform expensive updates once
per redraw. There is no performance gained by CaretManager duplicating
this logic as well.

In addition, bind to any processing batch end. This is because any
type of edit may cause the caret to be pushed off screen including
adding annotations, splitting paragraphs, deleting text, modifying a
paragraph style etc. the most straightforward way to ensure the caret is
up-to-date is to check it's visibility on every edit operation.

Fixes #765
Caret no longer needs to be hidden between redraws

Removing layers of timeouts in the CaretManager mean the caret no longer
flickers badly when transitioning between large and small sizes.

See PR #369 for details about why this workaround was put in originally.