Use session identifiers for unique LDAP db aliases.

Since user binding is done per session, this should be both safer and
cleaner.
Use context managers to clean up settings.DATABASES after binds.
Tests: check whether failed get_bound_ldapuser() doesn't pollute the db.
Clean up settings.DATABASES when get_bound_ldapuser() fails.

For example, if invalid credentials are provided.
Merge pull request #90 from mgorny/new-bind_as-2

New bind_as()
Merge pull request #91 from mgorny/ensure-credentials-cleaned_up-on-exception

Ensure credentials cleaned up on exception
add documentation
Merge pull request #93 from dastergon/docs

add documentation
Require the database cleanup only to remove USER and PASSWORD.

Due to limitations in django, we can't really remove or replace settings
dictionary once connection is instantiated. Therefore, all the code
that's playing with it will simply modify the existing dict.
As a result, removing the connection will only remove username &
password, not the whole entry.
Merge pull request #94 from mgorny/tests-fix

Require the database cleanup only to remove USER and PASSWORD.
Import ACLField from our forked django-ldapdb.

We will work on getting a more generic field upstream. For now, let's
just keep it local.
Switch travis to the clean branch.
Merge pull request #95 from mgorny/clean-ldapdb

Import ACLField from our forked django-ldapdb.
Switch to other ldapdb fork

We can update the branch version every time when stuff changes
Minor fix
remove dependency_links from setup.py

It's broken and we don't want to fix it