Changes TabContentsDelegate::ShouldAddNavigationToHistory to be passed
the HistoryAddPageArgs so that they can be cached and used later
on. Refactors some other code that interacts with history so that it
can be called separately as well.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3158029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57458 0039d316-1c4b-4281-b951-d872f2087c98