Added MockReporter for tracking test runs. Added intrusive smart pointer. Config holds reporter by smart pointer, so we can route the mock reporter through multiple test runs
Factored file/ line storage and formatting into common class. Used in a static registry so failure messages can be asserted to have the file/ line in.