-[SKPSMTPMessage send] should work when called from a background GCD
queue

Explicitly schedule timers and run loops to use the main thread.
Changed Demo client to call send from an async queue.
Added support for UTF8 in message data.
Merge branch 'devel'
This addressed a problem when starting a connection in a background operation.
The "fix" is to schedule the steam on the main runloop, instead
of the current runloop.