table widget setup
basic horizontal table layout
move CalcLayoutContribution and CalcSize down to Widget, they always belonged there really
move layout logic out to a helper class
track row heights in the layout too
split header and body into two separate widgets. that will allow the body to be scrolled independently