Broke out class into its own header file and .cpp file.