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

Visibility and infection features are added and tested.
I'll test visibility and infection for both cases.
At the level I'm testing in this test function, everything is invisible because it does not interact with the grid model yet.