Ignore identically rendered templates

A given template (view) can be rendered many times, especially layouts and partials. But many times the rendered templates are identical. There's no need to store/process identically rendered templates.

This can greatly reduce memory usage and improve speed since Brakeman is no longer storing or processing duplicate templates once they are rendered.

A similar optimization has been in place for a long time to avoid rendering templates with the same values over and over, but this change is to not store templates that end up rendered the same, even with different values/environments.