Rework the way that collapse-through offset is calculated

Parents of collapsed-through children should place their origin after
the collapsed margin-top of the child, but the height (and advance) of
the child as well as its effect on floats should be calculated by the
collapsed top and bottom margins of the child. When dealing with this
situation, return the collapsed margin-top and use it to calculate the
origin only.