Adds support for web workers

This adds initial support for Web Workers; at least to add basic modules. Not as much work as you would think, most places where it checks if we are in a browser will work in a Worker as well. Fixes #201