Add send/registerMessageListener functionality

Now we can send and receive messages between clients and students.

Next few commits willb e an example on how to use this.
Add forum example for Connection.send and Connection.registerMessageListener
Fix forum on mac

Mac was unable to exchange messages on the forum due to messages being
blocked. This turned out to be due to reactor's "transmit" method being
called from wx python. Add the threadding hack implemented in Connection
(model/Connection/__init__.py) to BaseConnection (model/Connection/Connections/__init__.py)
too so that all wx callbacks stay in wx and all reactor callbacks stay in
reactor.
Merge branch 'send-and-receive-messages'