Basic EMR support using MRJob

I hacked this simple (and maybe a little bit dirty) integration between Luigi and MRJob. Looking for some feedback and see if we can iterate to make this better :)

It needs all MRJob code to be in a separated `.py` file since MRJob takes that `.py` and sends it to the cloud.
On the other hand that makes easy to integrate old MRJob code to luigi.

I am sure there is a solution to make it more friendly like the native Hadoop support luigi has (just define the mapper and reducer), but I am not sure how to do it.

It uses the new S3Target but it actually doesn't do anything special with it, but I think that makes easier to understand the pipeline.

Includes the most basic example from MRJob.

### Update
Not the most expert git user and not sure if I merged the pull requests ok, sorry about that.

Now is possible to just write the mapper and reducer into the same file as the other tasks, that makes things clearer.

What it does is to grab the source and create a temp file with the MRJob code; MRJob needs to ship this file to EMR.

Issues with this approach: if you have two MRJob consecutive tasks is going to create two clusters, one for each task. The solution on that case would be to write the consecutive steps in MRJob and call it as an external MRJob task.