Merge pull request #62 from AntonGordienko/master

Additional to previous patch.
Added IMailFolder APIs to copy and move a single message
Updated README.md
Fixed indent for ImapClient
minor code formatting fixes
Fixed dequeueing of cancelled IMAP and POP3 commands after catching OperationCancelledException
Modified ImapStream.ReadAhead() to be cancellable
Implemented support for the IMAP IDLE command.

Fixes issue #61
Modified previous commit to be a bit safer...
Fixed Socket.Poll() logic
Added ImapClient.IdleAsync()
Make the Done() method private
Fixed comment
Fixed ImapStream.WaitForData() to return immediately if data is buffered
Protected against re-entrancy
Added a sample illustrating how to use ImapClient.Idle()
Renamed the ImapIdle sample
Fixed the comparison logic in the ImapIdle sample
Added .NET 4.5 targets
Updated ImapStream to implement MimeKit's new ICancellableStream interface