Updated room system and room API, more to come

There's a lot of verbosity in the scripts, so it might be beneficial to
redice that at some point.