Changed Index to LockedMap to better describe the class. Added explicit locking functionality to facilitate alternative instantiation methods for subclasses. Updated cgmap and tests to accomodate the changes.