- first attempt of socket abstraction (more to do)