ReSharper linter improvements

Summary: Optimizes the execution of the ReSharper linter. Processing of the solution file is now contained within the linter and paths are passed to the linter from the engine(s) in a more standard way. The linter itself will resolve which ReSharper results actually apply to modified files and only present those as messages. Also bumped to require ReSharper 8.1.

Test Plan: Execute a diff with C# or VB files and note relevant messages. This will still find quite a bit of detail.

Reviewers: jmillard

Reviewed By: jmillard

CC: bmiano, izimin, dhaney, kspearrin

Differential Revision: https://devportal.imobile3.com/D7906