remove timer from the run queue. run the queue again automatically if things were enqueued during an execution. don't let tasks get enqueued if they're already set to run in the current execution.
move task_table tests to their own file.
clean up some of the logging.