libgraphviz: add `label` and `escaped` ctors taking any `str::IntoMaybeOwned`.
libgraphviz: extend API with flags to indicate options like "do not include labels".
Added `-Z print-region-graph` debugging option; produces graphviz
visualization of region inference constraint graph.

Optionally uses environment variables `RUST_REGION_GRAPH=<path_template>`
and `RUST_REGION_GRAPH_NODE=<node-id>` to select which file to output
to and which AST node to print.

Note that in some cases of method AST's, the identification of AST
node is based on the id for the *body* of the method; this is largely
due to having the body node-id already available at the relevant point
in the control-flow of rustc in its current incarnation. Ideally we
would handle identifying AST's by name in addition to node-id,
e.g. the same way that the pretty-printer supports path suffixes as
well as node-ids for identifying subtrees to print.
Modify `-Z print-region-graph` to attach smaller labels to nodes and edges.