Refactor predicate
Fix style
Extract send_nick_change
Refactor muc_user_item creation
Extract status_code/1 and muc_user_x/1
Refactor send_nick_change
Spec newly introduced functions
Fix invalid types
Break long lines
Extract process_message_from_allowed_user
Change name: is_user_allowed -> can_send_to_conference
Split process_message_from_allowed_user

In fact, this function handles only subject change requests;
this is on the contrary to what its name says.
Extract can_send_broadcasts/2
Extract send_error_only_occupants and DRY
Merge pull request #233 from esl/muc-refactoring

Refactor parts of MUC for readability