breaking player into its own module
change file organization