Implementing UDP communication

Other function are implemented on the server to meet the
assignemnt requirements.
Adding more documentation.