SSP-1535 - Add Set to Inactive button on Caseload Assignment
SSP-2764 - CSV export clears search results
SSP-2762 - Users offered bulk actions for which they lack permissions
SSP-2762 - hide combobox if no bulk perms exist
SSP-2834 - Bulk email student form changes
SSP-2789 Add EarlyAlert Reasons Report
SSP-2788 Add changes to EarlyAlert Course Report
SSP-2826 - Added new perms to the api. Updated test.
SSP-2856 - Fixed a typo
SSP-2834 Consolidate single- and bulk student email dialogs
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.
SSP-2861 Stop CCing current user on bulk email messages
SSP-2869 Map ValidationException for 400 HTTP response status
SSP-2841 Filter EarlyAlert Reports by TermCode
SSP-2853 replaced NotNull constraint on external_person_planning_status.status
SSP-2847 add NotNull constraint to external_term.start_date and end_date
SSP-2788 SSP-2789 Update changes to added Early Alert Reports
NOJRIA Added null term code to early alert dao tests.
SSP-2827 - Added ThreadPoolTaskExecutor bean.
SSP-2827 - Made corePoolSize and maxPoolSize configurable.