astakos: Split im/functions.py

Split `im/functions.py` in two parts. Rename the first part as
`user_utils.py` and keep in it all user-related utilities that
`im/functions.py` provided (mainly mail utilities). The second part is
the project-related functions, which will be kept in `im/functions.py`
for now.

Also, fix any broken imports that this split introduces.
astakos: Allow sending customizable emails

Add a `send_plain` function in `im/user_utils.py`. With the `send_plain`
function, the admin can send a fully customizable mail to an
AstakosUser. The admin can either choose to use the provided body
template (`plain_email.txt`) and subject, or write his/her own.
astakos: Add project logic

Add a `validate_project_action` function that takes a project and
an action as arguments and checks if the action can be applied on the
project.
astakos: Add user logic

Add a `user_logic` file that serves as a common endpoint for actions on
users. The actions that this file offers act as a wrapper above
`activation_backends` and are used by `snf_manage` and `im` views.

Also, add a `validate_user_action` function in `activation_backends`, in
order to export this user logic to any other module that wants to use
it.
astakos: Add tests for user_logic

Add tests under `im` that verify that the functions in `user_logic.py`
are working as intended.
astakos: Add tests for management commands

Add tests for the following management commands: user-modify,
user-activation-send.
Revert wrong commit

This reverts commit cf9b4e0bba5f5b8b111581df4836aac9cf08a40c.
docs: Update obsolete intersphinx mappings

Update the obsolete intersphinx mappings for Synnefo projets in conf.py
docs: Minor fixes
psycopg2: Verify the pooled connections correctly
docs: Update references to the old repository.
docs: Follow up to remove references to old repo

* Remove/Update a lot of references from the old repo (code.grnet.gr) to
the new one (github.com/grnet/synnefo).
* Remove obsolete Integrator's Guide.
Merge branch 'feature-astakos-logic2' of https://github.com/apyrgio/synnefo into develop

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.
cyclades: Update help msgs on snf-manage commands

* Print the default value of --wait option in snf-manage help of:
    - port-create
    - port-remove
    - server-create
    - server-modify
    - server-remove
cyclades: Update argument names of snf-manage cmds

* Update various snf-manage commands to use "--user" instead of
"--owner/--userid/--user-id"
* Update server-create and server-import to use --flavor instead of
--flavor-id
* Update server-create and server-import to use --image instead of
--image-id
* Update subnet-create to use --network instead of --network-id
docs: Update docs to comply with previous commit

* Update docs and Changelog to reflect changes introduced in the
previous commit.
burnin: Test cross-container object move (pithos)

Refs #108
pithos: Fix copy/move snapshots

The available flag denotes that the object's mapfile exists on the storage
backend.
This flag should be kept during copy/move operations.
This commit handles this issue.
pithos: Provide tests for copy/move snapshots
cyclades: Store image version additional to UUID

Store the image's version together with the image's UUID, in order to
track the exact image (Pithos file) that has been used for a server or
volume. This is required because Pithos files retain their UUID when the
file's data or metadata are updated. The (uuid, version) tuple is
required in order to fully determine the file that has been used.