LOC-2 Implemented user password storage
* The backend now stores a (bcrypt) hash of a user's password.
* When a room is created, a hash of the owner's password is also inserted into the invite table so that they can join the room
Currently, the password isn't actually needed to join (that's the next step)
Within the client, when a room is created output is generated to show how to join the room. This commit amends that output to include the admin user's password, for example
To join the room, do /join BenTest123 SD8WXY1OKC39CI0Y:QCVN7CEPUCHAQU2S ben
The first section (i.e. before :) of that password is the room password (so will be used for the E2E encryption). The second half is the users password.
When invites are generated (this doesn't yet happen) the generated output will differ only in the second half of the password and the username to sign in as.