Added reliability / life cycle features:

* save auto-detected extension id to chrome storage
* start web socket server for aforementioned extension id detection in background page instead of app
* fix issue with lingering socket causing web server to not work after re-launch