Get rid of ComponentUpdated

NodeUpdated is enough information for property changes, we don't need to
have it finer grained on the type of node.

Change-Id: If718905cd1fce247d33a89cf258dc2ea3a852d91
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Automate the NodeUpdated notifications

Now, each time a signal known to be the notification of a property
change is emitted, we notify the observers automatically. Properties
for which no NOTIFY has been provided are ignored.

This change also allowed to drop quite some redundant code in QNode
subclasses.

Change-Id: Ib4fbeb8311148a6b8789f19ebe437fc7d413a599
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Hide doClone implementations behind a macro

This way we will avoid inconsistencies. It also means making some of the
copy() implementations more clever.

Change-Id: Ic79c9ec7c9c32f8951d5d9f5184592880bf8d5fd
Reviewed-by: James Turner <james.turner@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>