exp/ssa: document principal interfaces in package doc.

Also:
- add a runnable example to the package doc.
- fix Literal.Name() double-quoting bug.
- eliminate underlyingType in favour of Type.Underlying()
- eliminate indirectType in favour of Type.Deref()
  (NB, this does remove an assertion).
- Refactor generation of init() calls now that the need to
  iterate over the syntax (not types) is not considered a
  workaround for a bug.
- GorootLoader renamed to GoBuildLoader and parameterized over
  a *go/build.Context.

R=gri
CC=golang-dev
https://golang.org/cl/9100047
18 files changed