Refactor Orchestra\Mail, for future improvement.

Signed-off-by: crynobone <crynobone@gmail.com>
Fixed unable to use Mail::queue() for user registration due to some limitation with SerialClosure. Closes #94.

Signed-off-by: crynobone <crynobone@gmail.com>