Added setting 'testResultLogger' which allows customisation of test reporting.

Allows users to customise the logging that accompanies tests when they finish.

Users can now silence test output on modules without tests, using this setting:

```scala
testResultLogger := Tests.ResultLogger.silentWhenNoTests
```

The default logic is unchanged. _(Fixes #1185)_