Couchbase support

I've written an adapter for Couchbase using [couchbase-model](https://github.com/avsej/ruby-couchbase-model).

* Views should be created in advance for finding user documents, depending on the fields used. e.g. to find a user document by `email` field, a view called `by_email` is required.
* If using `failed_logins_count`, remember to initialise the value to 0.