abstracted room connection from room, onmessage and onfile now behave the same which fixes #17