Fix always incrementing EmptyPartitionCount and add tuning for catch up mode

readAndReturnShard was always incrementing EmptyPartitionCount.
At startup we try to roll through all partitions once to catch up with
any past messages. Allow for a different poll interval until we're done
catching up and reach a steady state.
Expose the work & idle queue depths.