Merge dev with master

Will work within the master branch until a fully working release is ready, and then will switch back to working on future releases within dev. (This just makes it that the master branch contains up-to-date stuff until the game actually works.)