Implemented a working version of the UDP socket class.

Basic UDP client now uses the UDP sockets.
Fixed a lack of inline on all socket classes.

Fixed bugs in the UDP class that made it impossible to connect to distant servers.
Updated UDP client functions in main to use the new UDP socket classes.
Merge branch 'UDP2'
Added some new packet types.

Used the packet types directly in main, since they weren't packing together correctly.
Added a class for a keep alive server for the second assignment.
Added a working implementation of a keep alive server that keeps a running list of clients.

Fixed a bug in udp socket's bind function.
Updated command line options so that other client and server configurations can be run easily.
Added a function for the keep alive server in main.
Keep alive server now broadcasts received packets to all of its clients.
Merge branch 'KAServer'