Refactor hraven to add multiple sink support, adding a graphite sink, other feature adds (filtering/exclusion patterns, regex pattern for history folder, glob status, oozie compatibility, etc.)

Refactored hraven for feature adds:
*ability to output to sinks other than just hbase (for job conf and history)
*added graphite sink and refactored hbase to work as a sink
*generic object model and abstraction for output records of JobFileProcessor's mapper instead of emitting Hbase puts
*changes no hraven behaviour for hbase output

+some bug fixes
@angadsingh, If components hashCode is already reasonably distributed, dont see how multiplying the result by 31 will help. If there are multiple elements that made up the hashCode this is understandable.