Structures tests around CodeFixTest to reuse Analyzer and CodeFix creation

To avoid setting up boilerplate code to provide Analyzer and CodeFix instances for every single test class, I've created a class named CodeFixTest that encapsulates this need through generics, allowing test classes that implement it to stop worrying about creating said objects -- they just need to inform the classes they need instanced.