Split memory management

Some attempts to address #1079 -- just for discussion at this point.
@michaelcahill, I'd move these #defines out of `btree.i`, they're not inline functions and not used in that file, they could go in `btmem.h` (internal Btree stuff), or `session.h` (that's where split_gen lives).   I don't feel strongly, but it didn't seem right.