Less "automatic" Response building

The auto-insertion of ":" before the tailing argument
was causing problems with joining password-protected
channels, so now I'm building response strings
specifically for the command, rather than relying
on a __toString method.
Simplified flood control
Added support for password-protected rooms