extended languages use base entry point; added prune-language.

  * INCOMPATIBLE CHANGE: Extended languages now use the base languages's entry
    point as the entry point for the language instead of the first listed
    nonterminal.  In general, this seems like the behavior you want, though it
    may break some existing libraries, so upgrade with caution.
      nanopass/languages.ss, tests/compiler.ss
  * Added a prune-language form that, when given a language, starts traversing
    the language from the entry nontermainal and determines if there are any
    dead nonterminals or terminals in the language, prunes them, and returns an
    S-expression representing only the reachable parts of the language.
      nanopass/language.ss, nanopass.ss
Merge branch 'master' of https://github.com/akeep/nanopass-framework