Rename config to deck
Refactor deck

The deck has some more fields and structure to it.
Add a bootstrap function

The bootstrap function wraps up the experiments in coroutines for
later execution. This should be the function that's called first when
starting censorscope.
Add a log function

The pprint function prints only if the global DEBUG is set. This is
sort of a pre cursor to a good logging function. Stay tuned.
Add an event loop

The director starts the bootstrapping process and then ignites the
engine. The engine loops over the list of experiments and executes
them. The deck has also been updated to reflect some changes in
terminology.
Log the file name while writing results
Remove TODO items

These have already been fixed.
Make experiments a local table
Rename start_time and elapsed_time
Refactor the event loop

* The intial event loop was wrong, it checked if start_time was
  greater than os.time() -- this is wrong, it should be the other way
  around.
* Add reschedule function
* Add logic to see if experiments needs to be repeated.
* Add an outer loop that keeps chugging along till all the experiments
  are done.
* Rename bootstrap_time to last_run
Return a coroutine instead of wrapping it in a callback

Other minor changes
* Rename reschedule to schedule.
* Add some comments
* Log errors
Set last_run after running the experiment
Add a simple sandbox for running experiments.

We do not expose any functions to the sandbox, so it's pretty useless right now.
Add a simple DNS lookup primitive
Refactor experiments to use a sandboxed API.
Move serialization inside the sandbox.
Upload results upon exit.
Let DNS resolver specify a resolver
Put serialization in the sandbox.
Add dns test for looking up Alex domains.

This is just an example. It doesn't record a lot of important information you
want from a DNS test, like timestamps, number of results, etc.