Updating data model to use join tables, more tests and bug fixes with leaderboards