Model: wrap up common bits to _get_connection().
Model: support calling build_*dn() with custom values.

This allows us to build DNs on uninstantiated classes.
Add bind_as() to support binding to different credentials.
Support bind_as() on a class.
Merge pull request #3 from mgorny/bind_as

Support for bind_as()