adding a few util methods, reducing repitition of logic on board printing, added a method stub for fork_available() in board and added winning_moves() with the exception of diagonal logic