changed global variables to be wrapped in a struct
added project files