Split out functions for inspecting current JS environment into 'env' module

These functions are useful in several non-test contexts.
Add test for crypto_worker and emulation of web workers using child processes for use in Node JS

This can be used to run most of the same code used for workers in the
browser in the tests using Node.

By default the use of workers for password derivation is disabled to
avoid the complexity of managing the shutdown of the worker processes
and it doesn't bring that much benefit in a non-browser context and
on desktop systems where key derivation is fast, as opposed to mobile.
Additionally optimizations to typed arrays in Node v0.11.x will make
key derivation faster again.

Workers are enabled via CryptoJsCrypto.initWorkers() and this is called
on webui app startup.