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