Is there a reason we need an atom here?  It seems like `startup-nrepl` could take a single argument (config), and return the server instance.  You could call that directly in the `let` block, and then you'd have the reference you needed to pass to the `shutdown-repl` function.

I believe that would get rid of the atom and the need to do any dereferencing.  Am I overlooking something?