MAPREDUCE-4059 introduced a pluggable HistoryStorage interface. The interface right now is very minimal and mostly is the result of refactoring/moving other methods into the new interface. We should rethink this interface so that it is a complete interface that is stable and robust. This is also very relevant to MAPREDUCE-3002 where the HistoryContext is to be separated from the ApplicationContext. This would allow for the HistoryStorage interface to return objects that are not incomplete instances of Job, but instead History specific objects that indicate more cleanly what is and what is not returned.