See DRIVERS-918 for details.
mongo-ruby-driver #1899: RUBY-2168 reorganize connection code
mongo-ruby-driver #1901: RUBY-2168 separate scram and scram256 authentications and conversations into own classes
mongo-ruby-driver #1902: RUBY-2168 Support speculative authentication attempts in isMaster