Local primaries should be preferred to relocating primaries

To reproduce the bug use -Dtests.seed=5AB62524C9AB0489
Fixes #4237
iterator doesn't implement #remove()
acquireSearcher should fail with state failure when not set/closed
also fixes #4232
acquireSearcher should fail with state failure when not set/closed
also fixes #4232
Bulk should support shard timeout like the index api
closes #4220