Add support for ReadPreference #559