code: public FieldReaderWriter locateField(String name) {
  		if (hasFieldChangedInHierarchy(name)) {
  			return walk(name, getLatestTypeDescriptor());
  		}
  		else {
  			return getFieldInHierarchy(name);
  		}
  	}
docs: TODO [perf] performance sucks as we walk multiple times!