Remembering which tabs were loaded for selected revision(s) to prevent reloads

Idea is that if for selected revision(s) Diff, FileTree or Commit Info tabs were already loaded we wouldn't load them again until different revision(s) is selected.

Apart from less flickering added value is that File Tree doesn't reset expanded nodes when switching back and forth between tabs.

What I am not sure about is if there are undesired side effects. If this approach is/seems wrong please let me know how could I improve it.