Improvements.

- Comments
- Data verification
- Exception handling

When it comes to better exception handling. We need to catch them and
re-raise them since otherwise they get burried in the worker process.

We aren't really catching them and printing out nice messages. I want it
to crash and burn if there is an exception raised.