Refactor FaunusCompiler to allow for getting job status

This patch splits FaunusCompiler into two classes. The first
factors out the management of running the multistage job into
a FaunusJobControl class. The second class is a FaunusTool
that implements the hadoop Tool interface and uses the
FaunusJobControl to run the jobs. This makes FaunusCompiler
a bit more orthogonal

This closes #164.
Merge branch 'job-control' into dendrite