Added FieldOfVisionCalculator class
Added equals and hashcode methods
Clarified error message.
Changed newlyVisible and newlyInvisible lists to sets, refactoring