[Experimental] UDP/rUDP modifications

any code after here will probably not be executed unless this loop is started on a separate thread.

Also, since this looks like a static method of sorts, perhaps it's meant to be a global event loop for all the Rudp sockets out there.

```
def eventLoop():
    LOOP_DELAY = 0.001
    while True:
        if len(events) < 1:
            break
        for event in events:
            if event.type == EVENT_TYPE_FD :
                #print "Found:" + str(event)
                # Check if we have some data available
                oRead, [],  [] = select.select([event.fd], [], [], 0) # 0 - means polling, othewrise timeout time in seconds
                if len(oRead) > 0:
                    event.callback(event.fd, event.argument)
                else:
                    #sys.stdout.write('.')
                    time.sleep(LOOP_DELAY)
            elif event.type == EVENT_TYPE_TIME:
                logger.log(Level.DEBUG,"Checking for timeout, current time:" + str(getCurrentMills()) + " event timeout:" + str(event.time) + " id:" + str(event.id))
                if event.time < getCurrentMills():
                    logger.log(Level.ERROR, "\n\nTIMEOUT for event: " + str(event)) 
                    event.callback(event.argument)
```