Reformatted the code to match the standards.
Pulled out settings specific data into the SettingsData.
Pulled out the handling of creating engine objects based on the settings into the new engine loader object.
Expanded the settings menu to include check boxes.