Separated sender and listener modules from Program.java
Added tests for client server communications