Auto-upload jars

This allows you to use a `JarStep` whose jar is a local file by automatically uploading it to S3 (fixes #772).

This is technically a breaking change; before, you could do:

```python
JarStep('', '/home/hadoop/hadoop-examples.jar')
```

and it would run the `hadoop-examples.jar` on the EMR master node's filesystem. Now you have to do:

```python
JarStep('', 'file:///home/hadoop/hadoop-examples.jar')
```

I *could* probably insert a shim that does something special for paths that e.g. start with `/home/hadoop` and don't exist on the local filesystem. I just doubt it's worth the code. As far as I can tell, the only useful jar actually inside EMR (not provided by AWS on S3) is the streaming jar.