better _link behavior, and smarter compilation for compile-structs
more accurate advice, since this does not require a long build
OMGGOODIDEA --- Use SES when loading arbitrary JS code

We had previously used a dangerous mix of `eval` and `Function` to load Pyret
modules dynamically.  This is ludicrous in a world where SES exists.

Changes required:

- Stop using lodash (we were down to just "merge" from it anyway)
- New module secure-loader does The Right Magic for initializing SES only
  if we are in a Node server context
- repl.html now includes initSES.js at the top (requirejs and all of our
  libraries seem to be just dandy with this)
- We can't use the stackTop trick in runtime-anf.js to get the top of the stack
  anymore, but this was always a hack anyway, and is probably best to be rid
  of it.  There is some commented-out stuff there for the immediate moment; we
  should get rid of the callers in a separate commit.
- Remove several different OMGBADIDEA functions and replace them with
  goodIdea()
bootstrapped with SES compilation reference
add a fallback because browsers
get rid of useless tests (pyret-test checks this all now)
no more topSrc, just use the new facility for builtin locations
just force to be non-sticky for now; revisit for speed gains later
Series of minor cleanups

- Make undefined and Object.create be fields that are runtime-dependent: this
  speeds up running under SES because they were the only free variables that
  kept hitting the SES-lookup ceiling
- Forgotten ";" after throw statements in js-ast
- Add a a-seq AExpr to avoid creating unnecessary "var" statements in compiled
  code that are never used
- Remove a-try, which is not used
merge new-world