Initial Refactoring of BoardState

Shifted board related methods into BoardState class. Will do work on
''heuristics'' next to make canPlace(); useable.