[log] IDEA-117553 Optimize details loading: don't parse Changes at once

Instead parse them only when requested.

* Move parsing from GitLogRecord to separate class GitChangesParser.
* Introduce VcsChangesLazilyParsed details which accepts changes getter
  in the constructor and requests it only when getChanges() is called.
* Implement it by GitCommit: store unparsed objects received from
  Git and call GitChangesParser when needed.