Cleaning up ExtractionHelper and adding tests.
Fixed FileStoreImpl.File so data can be read multiple times.

Also added tests for document metadata extraction.
Refactoring ExtractionHelper, and adding test for using version.
Refactoring getVersion() to remove loop.

Added test to ensure nulls are still handled fine.