Lists are a library, convert runtime.rkt to structural lists, and cleanup

- Lists defined in list.arr are the one true list
- runtime.rkt seal and keys now use just records with first and rest
- fixed top-level of pyret programs to use define to work with repl
- chain doc on lambdas through contract wrappers
- add verbose flag and test printing in test-utils
- allow symbols as sourcefile names in attach-loc in compile
- use test-utils.rkt path rather than a string to make DrRacket traces
  not have errors (though it doesn't make the output any better)
difficult TODO merge