InvalidCharacterError = function(message) {
		this.message = message;
	}
WebSocket constructor.

The third `opts` options object gets ignored in web browsers, since it's
non-standard, and throws a TypeError if passed to the constructor.
See: https://github.com/einaros/ws/issues/227

@param {String} uri
@param {Array} protocols (optional)
@param {Object} opts (optional)
@api public