Hand off processing of the file fixes to the fixer itself, so the diff file doesn't do anything accept launch the process and report on it.
Sniff unit tests will now attempt to try and fix the errors they find to ensure the fixes are actually working. If fixable errors are not fixed, the unit test fails.
Adding a newline when the previous token (probably a comment) already has one can lead to infinite looping
Special case for when no blank lines are found and the braces isnt the last content in the file. Whitespace may be found, but be in a different scope.
A few more unit tests for blank functions