libdeng2|Widget: Ensure containers are accessed in const mode

When there is no need to modify the containers, make sure they aren’t
implicitly copied unnecessarily.
Fixed|libdeng2|Widget: Crash when notifying a tree

If a widget tree was modified while it was being notified, a crash
could occur because the widget list used for iteration had become
invalid.
Client|UI: Minor improvements for robustness

It is a little bit safer not to immediately delete a widget; better
to always use deleteLater(). Also make sure the compositor is
accessed only from the main thread.