refactor Atom code for readability
Don't call `Studio#stop` when stopping all jobs:

* Killing job group and threads should suffice.
Join or kill all subthreads before calling `/job-completed` event
Add mechanism for creating critical 'no-kill' sections:

* Each new thread has a no-kill mutex which is stored as a thread local var
* Threads aren't killed now without synchronising with their no-kill mutex
* Use `__no_kill_block` to create critical sections that won't be broken into by a kill

--> Be extra careful that code in a `__no_kill_block` doesn't block current thread.
Actually synchronise with the mutex from the correct thread!
Update code mirror to 3.22
Move react.js to vendor dir
Add commented version of server lines for open access

* Be warned, using the open access versions opens your machine to external attacks.
Simplify blue monday example by using with_synth_defaults