Add panning behavoir to browser graph results.

Create huge rect to cover whole svg.
Track zoom behavior and move container.
Turn off mousewheel zooming.
Browser: Make Movie Guide init query graph nicer.

Return a graph of 10 nodes.
Changes synchronization between LogFile and TransactionAppender

such that transactions cannot be appended and rotated away before properly
applied and closed. TransactionAppender now grabs the same monitor while
appending, as LogFile does when rotating.
Merge pull request #2965 from tinwelint/2.2-append-and-rotate-control

Changes synchronization between LogFile and TransactionAppender
Merge pull request #2934 from oskarhane/svg_pan

Browser: Add panning behavior to graph results
Merge pull request #2935 from oskarhane/movie_guide_return

Browser: Make Movie Guide init query return a nicer graph.
Revert "Revert "Move pretty printing of ast nodes to ASTNodes""

This reverts commit 853c20d7332cf5d46a7752ceb04352defb9e543a.
Make Pretty take an inner doc gen for rendering child nodes

o Makes ASTNode render using default
o Factors out ToString concern more clearly
Moving ast doc pretty printing to doc builders again but this time using the converter pattern
Pretty-printing collections
Fix astDocBuilder to properly pretty print nested values
Add astStructureDocBuilder for printing both ast and structure
Various pretty printing tweaks

o Support ast.Parameter
o Disable astStructureDocGen for now
o Add Doc.noBreak
Extract core of perty function composition into separate bling package

o Improves error handling
  o Uses total functions to Option to be more aware of error situations
  o Inline with concrete docGens instead of weird outer wrapper
    (error handling is a docGen local concern with a sane default)
o Replaces all of docbuilders and docgenerator types with new DocGen[-T]
o Temporarily disables ast support
o Rename HasDocFormatter => DocFormatting
o Rename HasDocGen => DocHandler
o Rename ASTTerm => ASTPhrase
o Prepares ast printing to use converter pattern (not hooked in / commented out)
Convert old doc builders to doc gens and re-enable pretty printing their subjects via toString()