Bug 1067420 - The UI frequently stops showing new pushes and job results

This branch adds two types of data polling: resultset polling, which uses a setInterval strategy to retrieve new resultsets and job polling to retrieve any new jobs associated with each resultset. This strategy resolves the dynamic data update discrepancies between tbpl and treeherder that occur when using only socketio for dynamic data updates.