Still moving towards it.  This PR hasn't changed the metadata classes themselves at all -- just the execution result object exposed by it and where the filtering logic lives.  More to come in another PR.