Nix the Splittable class; add fromFunction

Write mapWithIndex using
a hand-unboxed mapWithIndex#.

Make `split` strict, and add an internal strict `splitAt'`. This
helps `zipWith` a little.