WebSocketFrame #isValid now returns an error object instead of a boolean