* rename cdbus header include guards to use CDBUS_ instead of LASH_DBUS_
* remove dbus/error.h and dbus/error.c
error.h contained lash/ladish specific error strings and
lash_dbus_error() prototype. lash_dbus_error() is renamed to
cdbus_error() and its implementation is moved to dbus/method.c. The
D-Bus error strings that have DBUS_ERROR_XXX matches are removed and
their uses are switched to the libdbus variants. The ladish specific
error strings are moved to dbus_constants.h
* Room creation/destruction is now separeted from starting/stopping
(creating/destroying jmcore links)
* Rooms can now be created and destryed when studio is stopped
* Rooms are started/stopped when studio is started/stopped
Apart from better interraction of studio start/stop and room
lifecycles, it is now possible to implement load of studio with rooms
because during studio load rooms have to be created in stopped state
and eventually started only at later stage, during studio start.
There are three types of ports depeneding on references to them:
* ports that are referenced from jack and studio graphs
* ports that are referenced from jack and room graphs
* studio-room link ports that are referenced from studio and room graphs
The old approach was to destroy ports when removing references from jack graph.
Studio-room link ports were destroyed when removing the room.
However this caused double free when removing app ports that appear in jack and
room graphs.
The introduced implementation uses reference counting of graph references to ports.
Temporary references (like the one returned by port constructor and graph_get_port())
are not tracked.