Lets a model specify custom getters and setters when changing an attribute