FinderMetaDataHelper now checks for duplicate columns since a field may appear as both a field and in multiple foreign graph keys.
Removing columns from returned finderMetaData was causing saved grid state to become corrupt. This happens anytime a grids definition is changed and it's columns no longer match the columns in the state, so made change to grid apply state that will fix the state when the columns don't match rather than just dump the state.