Organize hadoop dependencies

The ``hadoop-client`` dependency pulls in all of the mapreduce stuff as well. I've reduced this to the dependencies that are actually needed to make hdfs work. You can see that I also excluded the things that were excluded from ``hadoop-common`` and ``hadoop-hdfs`` in ``hadoop-client``.

Also added ``*.iml`` to gitignore. I can move that to a different PR if you want, but it seemed pretty small.