mmap_array moveable
better exceptions