add support for configuring couchbase XDCR (replication) and bump to v3.0

needs testing but submitted for early review
Personal preference: instead of recursive, I'd have gone for a loop. Then the final exception could be a composite exception of all the failures, and the top-level message could include the number of attempts made. But no strong feelings.