loop optional kw argument

``asyncio`` authors encourage developers to pass ``loop`` argument, where possible, and do no relay on global event loop. So I've added, optional ``loop`` argument, please review.