Extract common middleware functions to MiddlewareUtils.
First cut at endpoint generation that just outputs script paths.
Add getEndpointHtmlModified to endpoint provider API.
Implement getEndpointHtmlModified in default endpoint provider.
Only generate endpoint if it has been modified.