Added some more unit tests in Board back in

Fixed a bug in parsePosition.
If a board is reused then its status values were not being reset to
the initial condition.
Fixed more invariant issues