Cache calculated style information when applying direct formatting

When direct formatting, often extremely similar (if not identical) style hierarchies are being continually retrieved. Allowing external consumers to provide a limited-life cache vastly speeds up the lookup for this data.

### 1000page.odt
|   | Master (ms) | PR 321 (ms) | PR 321 + (ms)|
|---|------------|------|---|
|Chrome|416651|42446|38806|