Don't have any wrapper classes for UDP socket, instead just have top-level
coroutines, taking raw socket as an argument:
s.recv(1500) => await uasyncio.udp.recv(s, 1500)
API is not stable and will guaranteedly change, likely completely.
Currently, this tries to folow the same idea as TCP open_connection()
call, but that doesn't make much sense, so that will likely change.