Support OOXML strict export

Difference between OOXML transitional and OOXML strict
OOXML transitional allows some additional features that have been removed from OOXML strict. The features that are only part of OOXML transitional are mentioned in Part 4 of the spec.

The other difference are the namespaces: As an example Part 1 §12.3.24, which contains the namespace URL and the relationship for a worksheet, mentions http://purl.oclc.org/ooxml/spreadsheetml/main respectively http://purl.oclc.org/ooxml/officeDocument/relationships/worksheet whereas the OOXML transitional one specified in Part 4 §10.1.24 specifies http://schemas.openxmlformats.org/spreadsheetml/2006/main and http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet.

Code pointers
A good starting point for the namespace work is the CreateOutputStream method

Work Items

 * Introduce mode for OOXML strict export
 * Go through Part 4 and put all transitional features inside of a conditional
 * Replace string based fragment URL and namespace URLs with an enum based system