This commit implements STUD-1490, allowing creation of components
on the container page. It also enables the delete and duplicate
buttons now that new content can be created that would benefit.
Note that it also creates shared functionality for adding components,
and refactors the unit page to use it too.
Handle secondary actions on notifications either specified as a single object,
or as a list of objects. Under the hood, the initialize method converts a single
object to a list containing a single object.
Models are extraneous for something as temporary as a notifaction -- this change
moves all the configuration into the views, and removes the models entirely.
Also, a SystemFeedback model no longer has a `type`, it has an `intent`. This is
because SystemFeedback views have `type`, as well, and this prevents a naming
collision.
It appears that one notification stealing focus from another causes some weirdness:
both clicking on a button on one view triggers the event on both views (the original
and the new view that stole the div). As long as the first view does *not* define
any click events, everything is fine -- this is the case for the saving notification.
I'll worry about the reason for this later; it has something to do with views
listening to models even after they no longer should be.