Parent rewriter for file history, closes #2452

Emulates git's missing --parent rewriting with --follow for files with multiple names in history.