Added infection and visibility features. Tested them. They work.

Visibility and infection features are added and tested.
Because we decided on a new string encoding for the grids with this number marking visibility, we need to go and change the rest of the tests that take in a test string, or better, make this test string that is used in like 5 places a static string so we aren't changing it in 5 places. Right now, your commit breaks 6 tests because of the tests not being updated (testGridModelInitialization, testOpenings, testConnectionPath, testGridModelRotateClockwise, testRotateConnection, testStartGoalConnection).