Added accessors to get calculated properties after validation.
Moved all extension/mime evaluation logic away from Type object