Custom attributes serialization and access

Rebased version of #243
I've merged this into the 1.1-dev branch, but now I think of it, this could create issues for users who already have a method with the same name as an attribute in their model. So I think we have to postpone this to not break backwards compatibility. @jpfuentes2 Any thoughts?