refactor rebuild to prevent and recover from hbase scanner timeouts; break apart scheduled executors and runnables for better fairness; handle direct ingress in calling thread