Implement 4 properties: enter, exit, update, hover.
Override define_single_val_attribute to use ValueRef for assigning attributes.
Get rid of validations (for now).
Clean up Transform.

self.class_eval is wrong. Should use self.singleton_class.class_eval
instaed.