Some initial ClusterMonitorLogicTests, which in turn required some additional implementations of Equals.
Qualify replica set ServerTypes with ReplicaSet prefix.
Simplified ServerDescription (removed IsMasterResult and BuildInfoResult) and added tests for ServerDescription.
Added ServerId to ServerDescription and removed it from IServer.
Changed the IMessageListener event handlers to be synchronous.