Pass object metadata to email templates

Email templates would only collect certain specified
information, such as `parentComment`.  But for
flexibility in the email notifications, you want
a lot more info without making multiple database
calls.

This commit adds a `fields.metadata` to the fields
that are passed between parts of the notification
system.

Tested with the projectCommentParentReply which
now can greet the user, tell them about the
comment, and give them a call to action.

Subjects are now underscore templates so that
the can dynamically be set in the config file.
Updated emailSettings.ex.js to show how you
can update the subject.

Adds a `cleanComment` function to the comments
utils, so that HTML content of comments (such as
references to users, links, etc) doesn't get
sent through in emails.

The validation has been removed; it was a bunch of
code that doesn't actually do anything.  It was
causing issues and so needed to be removed.

This is an intermediate commit to fix up
the notification architecture. Partial for #132