wrap userscript messages to add metadata

the only metadata at the moment is "sender"
{
  "sender": "namespace/name", # metadata
  "data" {"key": "value"} # userscript message
}