DocumentObjectMapper refactoring

additional tests