Import and update BlockIndexRanges from sumpy (#92)
* import and update BlockIndexRanges from sumpy
* move make_block_index to utils
* add a test for the cartesian product of matrix indices
* port uses of BlockIndexRanges to new versions
* point requirements to wip sumpy branch
* fix some small doc issues
* Point sumpy back to main in req.txt
Co-authored-by: Andreas Klöckner <inform@tiker.net>