Merge pull request #139 from ulzha/master

allow running without Tornado
Add-fix tornado bug

Only load tornado dependent classes when tornado is available.
Merge pull request #140 from wouterdebie/master

Add-fix tornado bug
Rewrote README.md and added the examples from the PyData 2013 preso by Elias

RFC: let me know if this makes sense.

Updated pictures to use the new visualizer, except the big splashy dep graph which I'll do later.

Removed some crap in examples/ and doc/ and added some more random stuff to README.md
Merge pull request #143 from erikbern/new-doc

Rewrote README.md and added the examples from the PyData 2013 preso
Minor fixes in readme
Minor fix about triggering many tasks
Fixes visualizing a task graph with missing tasks

They show up as UNKNOWN (like luigi-grep). Prints out a warning message
when this occurs, though it can be quite noisy.

Fixes https://github.com/spotify/luigi/issues/122
Merge pull request #144 from JoeEnnever/vizfix

Fixes visualizing a task graph with missing tasks
Refactored the task history support added by jennever@foursquare.com
Merge pull request #142 from erikbern/task-history-refactoring

Refactored the task history support added by JoeEnnever
Changing HadoopJobRunner to use move_dir when moving results to final output since move_dir is atomic
Merge pull request #145 from anyman/master

Changing HadoopJobRunner to use move_dir
Revert "Changing HadoopJobRunner to use move_dir when moving results to final output since move_dir is atomic"

This creates issues as well since we will have an empty output dir that will trigger other jobs to run.

This reverts commit daa6e6368706759622e60db98c0ec73c7198fc0c.
Merge pull request #146 from anyman/master

Revert "Changing HadoopJobRunner to use move_dir
Retry if ping of scheduler fails

* Makes ping interval configurable
* Also adds accessible stop() method to stop workers' keep-alive-threads
Additional test for new Worker.stop method
Merge pull request #147 from spotify/freider/ping_retry

Retry if scheduler ping fails
Refactor Worker.add

Refactored the Worker.add method to make it more readable. Breaks out
some of the email/error logic for across the module.
Flatten recursive add into an explicit list-based stack