Upload custom files for assignments
Currently the student upload interface only supports uploading a single ZIP file per submission.
The goal of this enhancement is to support uploading multiple files with various file formats. The frontend should ZIP them and call the unchanged backend endpoint.
Uploading binary files (e.g. .exe) should not be supported, as they will be rejected by the backend anyway.