SSP-2862 Use directory search when looking up bulk email targets

Fixes a problem where the back-end bulk email job queueing mechanism
was looking up students using a different search operation than the
front end.

Since that fix means we're now potentially emailing 'external-only'
students, this patch also includes fixes for various problems related
to that type of user, including a change to the TO used for
persisting bulk email job specs (now BulkEmailJobSpec) and revised
single-student email validation and journal entry creation guards.