Swap! should return local values - REPL friendly printer.

The first modification is to make `swap!` behave like its description.

> (...) Returns the value that was swapped in.

Cursors now acts like normal atoms.


Second modification is a REPL friendly printer until a more thorough reader/printer scheme is decided.
(When I print a cursor, I don't want to see the entire app-state atom printed.)