fixes #4641 Ensure default user role only after we save/update.

## Solution

Use `after_save` callback to save a user role.
Add default user role for users who don't have a role assigned.

## Problems

I tries to write a regression test, and even though I use `test_after_commit` gem, the test didn't fail. So I removed it.
It's used in tests, so that this signals are called when the tests suite is ran.