Dashboard metrics

This is the PR for the dashboard/channel metric graphs
The first loop determines how many hours to display. So if someone is viewing the graphs at 11:00am they will not be presented with data showing anything in the future like 17:00 as this will be nothing yet. Then based on the data set i get fom the API i populate my object in the format needed for the graph. e.g if current hour is 12:00 but only 6 hours are returned in the data set then the other empty hours still need to be added to show zero on the graph.

I added the extra hour onto the time as the graphs didnt seem to make logical sense to me. The values returned in the API data set are for the hour. Meaning in the 12th hour of the day (12:00 - 12:59) the were x amount of transactions. If i use the hour as it is it kind of represents to me that by the time it reached 12:00, x amount of records were recorded which seems incorrect from a graphing view. Not sure if my explanation is making any sense