Atomicity

This should help with the potential problems. Still could use a test that verifies that `runWebMState` is indeed properly isolated.

This directly closes #9.
Move this code directly below getWebState. Also merge those helpers ending with underscore