wrap declaration of has_one or belongs_to inside acts_as to reduce lines of code in the model
 also rename 'whitelist' option to 'with' for clarity
move ACTING_FOR constant hack into class variable acts_as_fields instead
 this is where we track which fields and methods are being delegated to which association
pass association type as optional second parameter of .acts_as