Restructure packages
Ensure to flush only once
Rename WebSocket to FrameChannel for clarity