Further refactoring of formatting module

The guessing of type formats that are non standard was refactored into another object to reduce the responsibility of the FormatTypeFactory.