[Finishes #65591406] Uses Vienna to serve 404.html

- Spider starts server with Rackup, since config.ru now holds vital code
- Template app Gemfile includes Thin webserver, whose outputs Spider can recognize
- SubmoduleAwareAssets assume all .js and .css files to be at top-level, under 'public/'
- Mentions of Sinatra are replaced with admissions of Rack or Rackup
- Patches Rack::Static to
  * serve files whose paths match permitted @urls, rather than paths prepended by permitted @urls.  This is necessary for delivering 404s in nested urls.
  * serve index.htmls only if they exist
- Patches Vienna::Application to append '/' on every non-file path.