Cleaning up, find function, implement Create<TDerivedEntity>