refactor attributes'value generator to deal with yams special
Attribute/NOW/TODAY values that may be used on [Interval]BoundConstraint
(BoundConstraint wasn't handled btw, fix this).
Besides passing 'entity' to generate_* function (needed to get value for
another attribute when computing one for instance):
* set nicer method names and makes clearer what's private/protected/public
* properly handle choices, constraints on float/date/datetime fields