WT_ITEM cleanup

@michaelcahill: this is ready for review and merge, I think, it passes the usual tests.

Obviously, there are some relatively tricky changes, both in the cursor/schema code and in the code that now expects the block manager to set `WT_ITEM.{data,size}`, hopefully I didn't miss too many of the special cases.