Does this handle a page like this correctly: https://gist.github.com/pcwalton/9c6921844f99bc40ba22

The ceiling of the second float should be established by the non-floated block before it. So the float ceiling in this case is determined by all blocks before it.