Fixed a few more failing tests.
Only override write command ReadPreference to Primary if connected to a replica set.
Added a test that the Cursor constructor calls Dispose on the connectionSource immediately if the cursorId is zero.
Code review changes.