socket basic functionality, still needs integration