Many code changes to make everything work with Path and XmlInputFormat. Completes milestone 2.

The existing code works with Files. Hadoop works with [Paths](http://hadoop.apache.org/docs/r2.3.0/api/org/apache/hadoop/fs/Path.html) and [FileSystem](http://hadoop.apache.org/docs/r2.3.0/api/org/apache/hadoop/fs/FileSystem.html) which provide an abstraction over files and file systems. That is to say, Hadoop encapsulates the stuff about distributed or local files and files systems and lets us work with Paths and InputFormats. This pretty much sums up most of the stuff in the commits.

Other than that, I added the XmlInputFormat. I tested with run-extraction-test and everything works. DistRedirectsTest passes. I added some docs too.

Please note that I have taken care to make the commits in a specific sequence. If you make your way from commit 4b9745f to commit d08417f it'll be easier to understand what's going on.

Also, it's worth a mention that you'll need to clone https://github.com/nilesh-c/extraction-framework , switch to the **fromxml** branch and run `mvn install` before building this repo on this branch. I've made a PR to extraction-framework with the changes in **fromxml**.
> Where? Could you post the full error message?

Here's a excerpt from `mvn install`:

```
[INFO] Compiling 22 source files to /home/nilesh/gsoc14/distributed-extraction-framework/distributed/target/classes at 1402756155969
[ERROR] /home/nilesh/gsoc14/distributed-extraction-framework/distributed/src/main/scala/org/dbpedia/extraction/util/RichHadoopPath.scala:29: error: No implicit view available from org.apache.hadoop.fs.Path => org.dbpedia.extraction.util.FileLike[org.apache.hadoop.fs.Path].
[ERROR] class RichHadoopPath(path: Path, conf: Configuration) extends FileLike[Path] {
[ERROR]                     ^
[ERROR] one error found
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
```
> Does new Configuration() make sense at all? I don't know Hadoop, but I would guess that it has to configured with a few parameters.

new Configuration() works fine for local single-node (not distributed) extractions. As long as HDFS isn't involved no configurations are necessary at all.

> I would guess that there should be one global Hadoop config object, and it has to be injected into every class and method that uses Hadoop.

Yes. :-/ I could have a trait to do that. Will need to think about it.