Add methods to check room permissions
Add method to check users can join to the room.
Add specs for Room.

- permission check
- joinable check
Add easy_thumbnails and save Room icon and user avatar
Add avatar to chat UI
Add specs for Room model
Modify the behavior which room models are saved.

- Use signal to create new group or role
Revice the issue that user can't login when server is running via pulsar.

- Merge this commits to pulsar

https://github.com/quantmind/pulsar/issues/84