New method to handle external port messages on Firefox/Safari
This adds a new method to support connecting to ports from external sources when using Firefox, and Safari. The reason this did not work before is that the existing listener did not support using the client.
The reason there is a new method instead of using the existing one is that the naming was off, due to the method being written when using document events, and since it now used postMessage, the name was changed to reflect that, as well as the new options added.