Equal and not-equal symbols in tests: Mathy not C.

Because brevity.
Support box-swap! only on Racket 5.92+
Add 5.92 to test matrix
Unit test: check for exn < 5.92
Merge pull request #24 from greghendershott/fix-box-swap

`box-swap!` should error in Racket < 5.92. Closes #6.
Deny gainful employment to future maintenance programmers.

i.e. Use `version<=?`.
~> & ~>> use #%app from lexical context. Fixes #25.
~> & ~>> should still work for macros. Fixes #25.

See the lengthy comments in this commit.
Dangling paren.
Bump to v0.4
Make tests work in Racket 5.3.2

In Racket 5.3.2, the `expand` tests would error with:

    link: module mismatch;
     possibly, bytecode file needs re-compile because dependencies changed
      exporting module: "/Applications/Racket_v5.3.2/collects/racket/private/kw.rkt"
      exporting phase level: 0
      internal explanation: variable not provided (directly or indirectly)
      at: #%app
      in: new-app

Use another approach to check whether the default or custom #%app is
used.
Merge pull request #26 from greghendershott/fix-5.3.2-build

Make tests work in Racket 5.3.2