Ensure FontHandles on Linux don't outlast the FreeType library reference.
Avoid leaking FcPattern pointers.
Remove unnecessary cycle between FontEntry and FontFamily.
Add document teardown operation to safely remove rooting for DOM tree and prevent leaks.
Add teardown phase to the start of each layout operation that manually breaks cycles between flows, boxes, fonts, shapers, and textruns on stale layout data.
Avoid creating a TextRun which won't be used, thus creating a permanent cycle with no way to break it.
auto merge of #468 : jdm/servo/investigate, r=metajack

By the power vested in me through the agency of gdb, massif, and valgrind, here are some changes that fix various crashes that occur when shutting down at arbitrary points, along with some honest-to-goodness shutdown leaks reported by valgrind, and the layout cycles that were causing 1gb/s memory explosions when running test_hammer_layout.html.