[HHH-8354]
added SelfDirtynessTracker interface and methods that will be added to enhanced entities
added hook in DefaultFlushEntityEventListener.dirtyCheck(..) if entity implements SelfDirtinessTracker
added CompositeOwnerTracker to composite classes to make the callback more performant
fixed and optimized collection dirty checks
use EntityMetaModel.getPropertyIndexOrNull to get the correct index