Adding metric tracking framework for Azkaban

This change includes:-
1. Metric Tracking framework under Azkaban.metric package
2. Default metric reporting emitter under Azkaban.metric.inmemoryemitter
3. Exposed metric functionality /stats using statsservlet
4. Number of running flows and jobs as metrics

We will also have a curl option for following:-
* To set tracking interval for each metric
* To enable and disable metric tracking in Azkaban
* To set metric history details like maximum tracked interval and display points for /stats servlet


I would make this constructor `protected` because you cannot directly instantiate abstract classes. See the answers to http://stackoverflow.com/questions/260666/can-an-abstract-class-have-a-constructor for a discussion.