Separated the main stages of the program into its own stage objects