Merge pull request #32 from syntheticpp/master

Makes sense. Thanks!
Filter out unsupported types before serialization of item data.

This is rather ugly and not exactly efficient, but there is no other way
apart from trying to serialize and see if it works. QMetaType::save at
least tells us it failed, QVariant::save (which is used by operator<<) just
asserts.
Rename ModelBroker to ObjectBroker in preparation to make it more generic.
Add basic bidirectional signal communication over the network.

This is for the few remaining places that split client and server not
along a model/view boundary.
Expand the object broker to support NetworkObject instances as well.
Improve naming.
Client-side part of NetworkObject.
Server-side part of NetworkObject.
Set up library for shared in-process and out-of-process UI code.
Move SidePane, it has no external dependencies.
Properly handle proxy models when synchronizing selection models.

Now hierarchies and client-side sorting do no longer mess up the selection.
Listen to selection rather than current changes.

Only selections are reliably mapped between client and server.
Unbreak Qt5 build.
Move ObjectMetaMethod roles to a location usable by the client.
Expose method type to the client.

This requires custom stream operators for serialization. Make use of this
in the property widget, makes the context menu work in the client.
unused
Factor out SafeArgument for re-use and make it actually safe.
Register an object locally as well.

Enables code that is shared between client and server to work, as well as
the in-process UI.
Relay a signal to local subscribers too.

Also, clean up the signal name type and prepare a bit for supporting
arguments.
Add some more sanity checks.