Add ViewComponents for diff file viewers
Diff files are using viewers (example) to present the actual content of the diff. Right now we're using partials to render these for commits and we're temporarily reusing these in the Rapid Diffs. We should aim to rewrite these viewers using ViewComponents to get better maintainability and performance (ViewComponents are compiled on the boot). We should be able to test each viewer separately after this change.