WIP, using polymorphic relationship for widget contents