Major upgrade
 - New syntax to set attributes: Use x.setattr('y', ...) instead of implicit x.y(...)
   - Solves a bunch of errors which were unsolvable with old syntax
     - User freezing of attributes is never required any more, getting an attribute freezes it
     - 'hasattr' sematics work during object creation
   - Allows improved error messages
 - Allow assigning default value: x.y = z
   - Same semantics as x.setattr('y', default=z)
 - INCOMPATIBLE with older versions
   - Get the last version that suports the old syntax + the setattr() method from the 'v1syntax' branch