Property: remove type

This should fix issue #264

Sorry for this non atomic commit, but due to all the dependencies it was hard to do changes in isolation.

This pull includes the following changes:
- Let Property inherit from IEntity instead of INamedEntity
- Redefine attributes `name` and `definition` on Property
- Implement `compare` method on Property
- Adjust tests

Thanks, I will add this to my next pull.