added socketio support and protocol objects