text: Title: Proper `HEAD` support for static routes
  Body: Implement proper `HEAD` support for static file serving.
  
  The response should follow the same logic as the default `GET` behaviour (like now), but not open any file streams (because we do not need any as the response to a `HEAD` request cannot have any body anyway).
  
  As a bonus, I think we need to block unsupported methods such as `POST` and `PUT`, and render the correct `Allow` header in response to `OPTIONS`.