code: @Override
  	public Iterator<Location> iterator() {
  		List<Location> list;
  		if(isComplex()) {
  			list = getSubLocations();
  		}
  		else {
  			list = new ArrayList<Location>();
  			list.add(this);
  		}
  		return list.iterator();
  	}
docs: Iterates through all known sub-locations for this location but does
  not descend