Use ActiveModel and ActiveAttr, closes #158