Re-implement UDP transport implementation

Get UDP working again after the refactoring of the transport layer.