Email notifications on new comments

- Some (tested) logic for building a list of recipients and a body
- Added the smtp-mail package but didn't get around to using it yet
- Various improvements to the testing harness
> Looks like activeSubscriptions isn't used outside this module.

I spend some time going back and forth here. I wanted to settle on a pattern where `finderFunction` returns `Entity e` and `finderFunction'` is the same but just returns an `e`.

In the case of `Subscription` I happen to only use the entity version, in the case of `User` I only use the non-entity version. But I thought it was better to define both for both consistently.

Think that's a bad idea / not worth it?

Agreed on adding exports, but I'd like to export both functions in both cases.