Tic-Tac-Toe - refactor a ton of stuff in order to allow for dynamic table size