Thanks for explaining your context. I've never taught students at middle-school level; it's undoubtedly a whole different world from mine (University level).
I'm not sure how much use CodeRunner will be to you in your current context. It's not likely to be useful for your questions 1 and 2, but could help with 3. However, there's a shortcoming with the above template approach that I perhaps should have warned you about. If students submit code with syntax errors, the error messages are going to be even more confusing than those from the Arduino IDE. Because of the extra code inserted at the start of the program, the line numbers in the error messages don't match the line numbers in the students' code. There are ways around this but they're complex and I doubt it's worth your time trying to program in all the extra functionality required. I think it would be better if students were told to get their code to compile in the Arduino IDE before submitting it to CodeRunner for final checking/assessment/recording.