crop model image if needed to maintain canvas aspect ratio
parse catalog factor; enable OK button if complete
simplify user inputs before processing
create file utility and an exception class
move classes to utility package
remove main method
fix image crop in createProjectModel()