Refactor design to accomodate an infinite board.

More refactoring

Added functionality to board and test for of rules

Add new files, add true neighbor function and add more tests.