refactor socket connection and playground into services and re-hook things as needed