Started testing from the simplest possible language: (define-language L).  This
lead to removing the x-define-language extra step, because this seems to
interfere with the context of the identifiers generated by the language.  Also
started working through the difference between foo ... in r6rs and racket (in
r6rs it returns a list of syntax object, in racket it returns a syntax object
containing a list).
  nanopass/language.rkt, nanopass/records.rkt, nanopass/unparser.rkt