Performance Improvements

Reads from space in chunks of 'batch' size, writes in arrays of batch
size, restores arrays ('batch' size) until it has restored all