Revert "Some wide-reaching but simple refactorings"

This reverts commit 75cfecf9e41479039fbe6b77d4e9eac71d17550d.
Changed the behaviour around certain error-handling code
Result -> Reporter
Some tidying