Add user/project logic in astakos

This PR adds several logic functions in `astakos`, to handle/validate actions on `AstakosUsers`/`Projects`.  Moreover, it moves the user-related functions away from the `im/functions.py` file and adds them in a `user_utils.py` file. 

Finally, this PR adds tests for the user logic functions, as well as a function to send fully customizable mails to users. All the above have been created in order to pave the way for the integration of the `admin` tool.

Proposed reviewers: @vinilios, @gkorf. I'd suggest @vinilios check the state/transition diagram in `im/user_logic.py` and see if it depicts correctly the actions on users.