The website only works when offline
(this is a lot of work) Use a HTML5 Application cache manifest to cache pages. This requires the MVC model to run on the client and sync with the server. Ideally, rewrite the whole website to Python+Flask and create a nice RESTful API, using some JavaScript framework to implement the frontend (EmberJS? Ask Sander for advice on this).