I believe that cursors shouldn't have to know about nodes except for keeping track of the one that was used for subsequent requests. Before the query is run the cursor should have no knowledge of what node it is going to be run on, that is yet to be determined by the cluster given the operation and the read preference.

It probably should be `client.is_grid?` or `cluster.is_grid?` because what you are really asking is, am I talking to a cluster or not. It's extremely annoying that something at this level (query construction) has to care about what type of node/cluster it is being sent to. This is an example of MongoDB breaking "cluster interface == single node interface"