correct multiindex handling

before this unpaper would silently fail on errors in parsing multiindexes. Or produce a segfault if the multiIndex contains more than 32 elements. Or if the range goes the wrong way (e.g. ````100-10````).
Now we throw error messages and quit processing.
Also added tests for multiindexes.
Unrelated change — you may want to use `git commit --amend` to get rid of this.