layout: Incrementalize reflow of block formatting contexts impacted by floats, and make float placement idempotent.

r? @glennw @cgaebel