Allow defining multiple email profiles for use in Apps

Problem/Justification
A lot of TrueNAS Apps accept SMTP email configuration through environment variables. This has to be done manually by filling around 5-6 text fields for EVERY app that accepts email configuration through environment variables.

Many times it’s used for alerts, just like TrueNAS uses it for email notification alerts.

I propose we add the ability to define multiple email “profiles” instead of only allowing one TrueNAS email configuration. The UI would allow to select the default profile used by TrueNAS, the additional email configurations could then be picked elsewhere, like the TrueNAS Apps.

We could accomplish this similar to how we manage certificates. Instead we would manage email SMTP profiles, which then are then passed to Apps.

Impact
This will help users speed up their app deployment and simplify management, since things like changing the SMTP password will only require change on a single centralized place instead of modifying multiple app configurations. This will also have the effect of more apps displaying the email support in the configuration UI because currently apps that do support but do not require email configuration through environment variables usually don’t display 6 optional text fields for email and users have to search for the app documentation to find the environment variable names. With this we could have a single optional field.

User Story
Users could define all their SMTP email profiles in System → General Settings → Email
Then when creating an app, users could easily pick the email profile they want to use with the app, similar to how it’s done with SSL certificates (a simple dropdown with no additional user input)

Cross posting Github URL for more details