Add memory limit option.
Newline in memory limit message.
Two changes:

- Change ,run and ,top so that the memory-limit is optional.

- Do a collect-garbage when a new limit is less than the old limit or
  the actual usage. Otherwise, I've noticed, custodian-limit-memory
  might not work when the actual usage already exceeds the limit.
Reduce racket-memory-limit default to 2048 MB.

I think this is better because `custodian-limit-memory` can allow
significant "overshoot". e.g. With the limit at 4 GB I've seen actual
memory usage climb close to 8 GB before the custodian is shut down.

An awful lot of laptops still have only 4 GB total. I don't know, maybe
the default should be even lower. This is a seat of the pants guess.
Fix problem reading quoted path.
Don't use string-split. Instead read until eof.
Merge branch 'limit-memory'. Closes #62.