Extend base EagerCursor class

EagerCursor::next() will now return nothing, which conforms to the Iterator interface.
Add Cursor read preference methods and set UoW hints

Set the cursor hint after calling the base method (likewise for the slaveOkay() method)