Homepage, guard against nonexistent authorization header.
API endpoint for latest image and polling script.
Don't copy images for closed events.
Mark oldest image as deleted when we hit the maximum number of images.