Fixed the problem when a user/space is created with the same identifier of another

When a user or a space are created the system try to create his room using the username/permalink like param. This can result in a error, because the room can't be created with a param equal to another. To resolve this issue a validate function was created in user/space model to verify if doesn't exist another model with the same identifier. If another identifier is found the model aren't created.

Fixed #1071
Adjustments and more tests after PR #9

Main changes:
* Validating the permalink and username on update too, since we don't properly
  block the user from changing these values yet.
* Brought back the check for errors on the bigbluebutton_room when validating
  a space. This should be reviewed, improved, and done for User too.
* Doesn't auto-suggest usernames on 'create' anymore, only on 'new', otherwise
  we might be overriding a value set by the user.
* Improved the js method to generate slugs more similar to slugs valid for
  usernames and permalinks.

refs #1071