fixes #26 made lock recovery more efficient by caching and batching

This code would benefit from #111 as ```List<Entry<Key,Value>>``` would become ``List<KeyValue>```