sitegen task, create site with better navigation.

Still not everything we want from a basic site generator,
but some steps in the right direction:

A site-wide table of contents, an outline in which the "nodes" are pages.

For each page,
+ page-wide table of contents, a list of headings.
+ "breadcrumbs" up top, that show how/if this page fits into outline

Testing Done:
added some tests. mostly "normal" cases, didn't try to dream up corner cases.

added some non-ASCII text to some test data, inspired by recent Unicode-mangling stories on the mailing list.

started https://travis-ci.org/pantsbuild/pants/builds/36613009

Reviewed at https://rbcommons.com/s/twitter/r/1086/
Ensure that we don't create a forwarding cycle.

Testing Done:
ci.sh passed.

Reviewed at https://rbcommons.com/s/twitter/r/1124/