========================
Significantly improves handling of memory for internal work arrays. These
allocations are controlled by three parameters: min_neval_batch (new),
max_neval_hcube, and minimize_mem. Parameter min_neval_batch replaces
nhcube_batch, which is now ignored. The implementation for
minimize_mem=True is completely different and should be much faster
than before; this feature requires the h5py Python module.