implement postMessage, fixes #2

we throw UnsupportedError on '[List messagePorts]' if they are present
as I believe those are dart specific;  should be investigated more
sometime