Column Sanity

I think this PR is finally ready to be merged (+/- some things, I'm sure). It's basically an entire rewrite of the `Column` type and everything that entails. The focus for this rewrite was on speed and always forcing columns back to strict/dense version whenever possible.
did the column builder lose its ability to take size hints? This seems like an important thing to have if there are any arrays under the hood in the builder.