Catch pre-boot (i.e. probably requirejs) errors and display them to the user.

This lets the user know that things are broken, and that they should probably
not bother waiting any longer. I was originally planning to use fatalError for
this, but then we would need to have a require statement which loaded
fatalError (and *just* fatalError, lest there was a load error for one of the
other modules), assigns window.onError, and then loads the remaining modules
required for boot-up. And this still wouldn't catch, say, an error when the
fatalError module itself is loaded, or when requirejs is loaded. This solution
catches all such errors immediately.

Ideally such errors should never occur in production anyway, and if they *do*,
it means we've done something really wrong.

Fixes #142
Requirejs optimizer is able to at least start running now.

Run it like

	cd client
	r.js -o build.json

(doesn't fully bulid yet, still trying to figure it all out)
Optimizer can now build main script file!

I have no idea how this code worked at all before this... Like even
on the regular client.
Merge pull request #146 from crazy2be/bugfix-catch-require-errors

Catch pre-boot (i.e. probably requirejs) errors and display them to the user
Make the worker use the same require root as the main page, this should
simplify our build process a bit (and make the path resolution seem less
magical).
The build works now! Just set BUILDBLAST_PROD="true" (or any other value other
than ""), and you'll run in "prod" mode, with minified scripts and css!
Remove superfulous log statement.
Quick workaround for #147.

The old code used to totally destroy it's state when it got a
prediction it didn't recognize, so it had to throw or else things
would break in stranger ways. However, a while back the code was
rewritten to be a bit more robust, so that throwing was no longer
necessary, and we could recover more gracefully. This patch takes
advantage of that to avoid crashing the client.

I wouldn't really consider this a "fix" for #147 per se, because
in order to consider it as such, we shouldn't give a warning under
normal operation of the server, but should still be robust if the
server code gets a little bit broken. So it's a workaround.
Merge pull request #148 from crazy2be/feature-requirejs-optimization

Feature requirejs optimization
Merge pull request #149 from crazy2be/hotfix-no-matching-prediction-data

Hotfix no matching prediction data
Merge branch 'master' into website

Conflicts:
	.gitignore