[SPARK-2299] Consolidate various stageIdTo* hash maps in JobProgressListener

This should reduce memory usage for the web ui as well as slightly increase its speed in draining the UI event queue. 

@andrewor14
should we do `get` here instead of `apply`? If the user attempts to look at the stage page for an ID that does not exist this will throw up.