created more robust block data structure.
more refactoring and added larger contextual objects which encapsulte data about cities, buildings, and blocks at different levels of granularity