If in app layer we usually:
1. Aggregate = repo.load()
2. Aggreate.doSth()
3. repo.save(Aggreagate)
Than we can assume that Aggreagta actually changed itself (We don't
have so much luxury to know which column actually change - like
dynamic in Hibernate).
Problem is when dealing with large aggregates (smell) and we do not
know what has changed..../
...hmm why You don't want to use Hibernate in domain model, anyway?:P