Add JavaScript solver model and string extension library.
Remove global variables when creating new actions
Add dummy and Observe actions.
Fix effects not being removed when they expire.
JS simulator
JS solver
Code cleanup.
Capture simulation and solver log output.
Terminate solver worker when Stop Solver is clicked.
Sync with master.
Update to latest yagal.
Show quality of best sequence as solver progresses.
Byregot's Blessing should only apply if Inner Quiet is in effect.
Fix initialization of Logger with null logOutput.
Tweak mutation and selection in solver algorithm.
Mutation and growth improvements in solver algorithm.
Check inner quiet in MonteCarloSynth implementation of Byregot's Blessing.
Correct calculation of normal probability at step 1.
Rerun simulation when settings change, fixes #8.
Move action-related services into separate file.