Made location class immutable.  Closes #118

Makes the Location class immutable in terms of coordinates and properties.  Set of contained objects can still be changed through add and remove methods, but underlying connection cannot be accessed except through an UnmodifiableListSet.