I will try to answer all your questions.
-- Answer to Q1
This is the two things at the same time :
feature: add bash to resolve de problem of people that write scripts without shebang
bug: don't check for people like you, that want to use other script language (no bash).
In the next version of VPL this problem will be resolved
-- Answer to Q2
Yes, the "misunderstanding" is this: vpl_run.sh, vpl_debug.sh and vpl_evaluate.sh are script to prepare the execution stage. The result of running one of this script should be a vpl_execution file (script o binary).
You can use a vpl_evaluate.sh like this:
cat >> vpl_execution <<'SCRIPT_END'
write here your phyton script file
chmod x vpl_execution
-- Answer to Q3 (comment)
"requested files" are the list of file the student must submit. But the teacher can set a initial content to this files, but the student must submit the files.
"execution files" are the scripts and files that will be send, with the student's files, to in the jail server. If you don't check it in "Files to keep when running", all "execution files" will be removed before run vpl_execution.
The student must submit all the "requested files" and in the proper order (future release of VPL might improve this).
The files that can be optional are ("Submission restrictions|Maximum number of files" - "number of requested files")
-- Comment to PS
Your initial thought was the correct, but these scripts must generate vpl_execution.
New Virtual Programming Lab (VPL) module