Finished core game logic. Close #12