Refactoring hraven for multiple sink support

Generic object model and abstraction for output records of JobFileProcessor's mapper instead of directly emitting Hbase puts at the lowest level of code hierarchy. Used MultipleOutputs to allow sinking to different sinks (graphite, hbase, etc.) and handle specifically writing of records at the sink's OutputFormat level.  Added graphite sink and refactored hbase storage to work as a sink. Changes no hraven behaviour.
Need copyright header on all new files before we can accept them.