Can't inject script in firefox addon using tabs.executeScript

I am just starting to learn how to create my own addon in firefox. I’m using webExtensions, although I’m finding it hard to get comprehensive documentation (I think because it’s still a new implementation?). The code all seems to work fine, and it completes an ‘onExecuted’ function after the executeScript call. But my injected script (output.js; actually, I’ve removed that and replaced it with direct code injection) doesn’t seem to fire. After running the code I get the following error in the javascript console: “No matching message handler”. I’ve tried this also in safe mode so all other addons are disabled. Same error message.

My code:
manifest.json - http://pastebin.com/C4q8nies
popup.html - http://pastebin.com/mA58CeXz
popup.js - http://pastebin.com/Si5mgESH
output.html - http://pastebin.com/zQ1k7Pmg

edit: forgot to add, I’m on firefox 47.0.1

Bump

Is that all of your add-on code? What is it supposed to do?