Don't try to disconnect if address never resolved to begin with

Call to disconnect triggers call to pool, which uses address.resolved
as a hash key. This in turn causes pollution of the connection pool.
Don't append nodes to seeds until DNS resolves

Test for equality of Node (==,#eql?) depends on node.address.resolved.
Therefore avoid such tests (such as .include?() ) until address is
resolved. This fixes unbounded growth (read: memory leak) of the seeds
array in unstable network environments.
Prevent ensure_connected from returning half-setup connection on reentry
Test for a connection should include non-alive socket
Ensure mongodb credentials are always sent upon (re)connection

If existing socket is reset, perhaps due to mongod failure,
credentials hash isn't reset. This causes them to not be sent upon
reconnection. Changed to reset at connect() instead of relying on a
disconnect() that may or may not happen.

Also cache last set of credentials so they can be reused when connection
loss is detected by with_connection().
Merge pull request #324 from zarqman/fix-auth-errors

Fix 16550 "not authorized", TypeError, and others
Add changelog missing entries
Use svg badges
Bump version to 2.0.1
Dont include peers if node already in the list

Node was leaking was duplicating nodes on the peers list.
Merge branch 'master' of https://github.com/mongoid/moped

* 'master' of https://github.com/mongoid/moped:
  Dont include peers if node already in the list
  Bump version to 2.0.1
  Use svg badges
  Add changelog missing entries
  Ensure mongodb credentials are always sent upon (re)connection
  Test for a connection should include non-alive socket
  Prevent ensure_connected from returning half-setup connection on reentry
  Don't append nodes to seeds until DNS resolves
  Don't try to disconnect if address never resolved to begin with