deserialize = function (data, callback) {
        /**
         * deserialize a message and pass the unpacked message object to callback
         */
        if (typeof data === "string") {
            // text JSON message
            callback(JSON.parse(data));
        } else {
            // binary message
            _deserialize_binary(data, callback);
        }
    }
deserialize the binary message format
callback will be called with a message whose buffers attribute
will be an array of DataViews.