Add a generic /overlay/<name> host for OBS browser sources master
Overlays are small widgets served at /overlay/<name> and added to OBS (or any other streaming app) as a browser source. The host owns what every widget needs — the ?user= identity, one upstream websocket, the version-manifest reload, a transparent page — and renders the widget registered under <name>. An unknown name, or a missing ?user=, renders a diagnostic that lists the names that work, because a URL is an overlay's only interface. Overlays are left running for hours, so they poll the node's build manifest and reload when it changes: that reaches an operator's browser source without them restarting it. The manifest is now served at GET /api/version (version, buildTime, uuid, Cache-Control: no-store) from the build flags the node already has. Both bundled frontends implement the route, since the node picks between them per request: js/app (what stream.place serves today) and js/web.