Refactor Frame API to use Cols/Rows.

This adds the new Rows/Cols abstraction for working with col/row extractors. Many methods on Frame change to use these instead, so it is very much a big breaking change.
@tixxit my previous comment was made without seeing any of the comments you made, btw.

But yes, if a write-up is on the horizon of the internal data-structures and how they fit together, then I'll hold off on reviewing any non-trivial PRs until that's ready.