add mapslices(). closes #2204
this is a beautifully general function. we can use it for #2484
and similar missing functions.
it is also a really good function to focus on optimizing, and for honing
things like indexing behavior.