clean
refactored server and client