CLJS-1224: cljs.repl: Memoize stack frame mapping
CLJS-1224: cljs.repl: Memoize stack frame mapping

When evaluating an expression that results
in a stack overflow, and the resulting trace
is source mapped by cljs.repl, this can result
in thousands of frames being mapped which
can take a few minutes. But, oftentimes stack
overflow is the result of recursion, so many
of the mapped frames are identical. This is
trivial to optimize using memoize, resulting in
the mapping occurring in a couple of seconds.

mstang/clojurescript,mstang/clojurescript,mstang/clojurescript