refactor engine.io parser