Add a more helpful error message when the transport is undefined.

When creating a profile with no transport, or just not setting
a transport fatal errors were emitted. A proper exception seems nicer.

Refs #3982
Fix PHPCS error.

Refs #3982
Merge pull request #3993 from cakephp/issue-3982

Add a more helpful error message when the transport is undefined.
Add support for persistent SMTP connections.
Merge remote-tracking branch 'upstream/3.0' into 3.0-persistent-smtp-connections