Fix mmap_bitarray; make it available in Windows

This fixes `mmap_bitarray` breakage introduced in #4700. It also adds tests as required.

I noticed `mmap_bitarray` was wrapped in a Unix-only block, but since it's basically just a wrapper around `mmap_array` there's no reason the same code shouldn't work in Windows too. To this end, I just removed Unix-specific function calls, i.e. I changed the call to `mmap_stream_settings` with a simple `isreadonly`, and I removed the finalizer since the one from `mmap_array` should suffice. These changes however should be reviewed (@timholy) and tested on Windows (@vtjnash or @loladiro maybe?).