Fixes for index generation
Allow indexing with Vector{Int}

Also cleans up other index types
subview: convert interior scalars into UnitRanges

This fixes the types of the created Views
Fix several indexing problems
Allow sub/slice to work with fewer indexes than parent ndims

Also add a whole bunch of tests