Adjust ssh pubkey model

Calculating and storing key's fingerprint.
Constrain keys to have unique names for each user.

NC-127
add_ssh_public_key OpenStack implementation

NC-127
Specify filtered relations in code rather then in config

User should not be able to break project and customer role
related handling code by changing settings

NC-127
Fix formatting in LDAP integration docs
Quick & dirty OpenStack cloud related processes implementation

Processes:
* Cloud registration
* Project to cloud linking

NC-127
Move celery task helpers to core

NC-127
Support for models w/o uuid in @tracked_processing

NC-127
CloudAccount and CloudMembership sync revamp

* moved synchronization to tasks
* extracted OpenStack specifics to a backend class
* synchronization of cloud accounts and cloud membership in background
* propagation of ssh key on membership creation and new key upload

NC-127
Update developer docs on managed entities

NC-127
Merge branch 'develop' into feature/nc-127

Conflicts:
	nodeconductor/server/test_settings.py
Change tenant_uuid to tenant_id

NC-127
Implement ssh key overwriting during push

NC-127
Fix logging in @tracked_processing

NC-127
Make membership user push to OpenStack more robust

Handled case when user was wiped from OpenStack.
Partially test covered OpenStackBackend.

NC-127
Merge branch 'develop' into feature/nc-127

Conflicts:
	setup.py
Merge branch 'feature/nc-127' into 'develop'

Sync cloud account, cloud membership, propagate ssh keys

Ssh key is not yet propagated when a user joins a project.

Deletion propagation is not implemented as well, this is by design.
Fix maximum python-novaclient version
Fixed random data generator