Prototype API for MUC management

This implements the necessary methods to query joined rooms, join/leave
rooms and get/set the topic for a room.

It implements this for the test backend but still requires work
implementing it in the rest of the back-ends.