Refactor some code into overridable methods.
This should make the transport a little more extensibility friendly.
Expose last SMTP response.
Match SP as per rfc2821
Merge pull request #3014 from ndm2/smtp-extensibility-response-access

SMTP transport - Extensibility and response access