For communication, now all UDP connections are made through
UnreliableDatagramSocket class (a subclass of DatagramSocket). The new
class will simulate packet drops (controlled by dropRate member
variable) for send() calls.