* adding annotation for fields to control them better
* creating final fields for immutable types
* presenting *Property instead of Simple*Property in the API