@YurkshireLad The memory recommendation is the absolute minimum memory below which the app won't run reliably. Like even with 1 user, it won't run properly below that recommendation.
The amount of memory required to host 100 users... is hard to know. Usually, the answer to this depends on the how all these users user Rocket.Chat. If they use simultaneously and if they use it from multiple devices etc. Cloudron will give you a notification (email) if an app is running out of memory. So, you can just take it slow and increase the app's memory limit as you go. You can also look into the upstream project's memory recommendation for 100 users.
The answer depends on how many students are there in a class. mongo db also needs to be scaled up according to the number of instances you install. I don't have a specific recommendation but I would put atleast 2GB per app install. From what I have seen, rocketchat is not that CPU intensive, so 16 core should be OK for ~10-15 installs.
Ideally, if you can just contribute your changes upstream, then we can pull it down from there in the next release. Please see https://rocket.chat/docs/contributing/translating/ . Alternately, I can tell you how to build rocket.chat package from Cloudron source package until your changes are merged (it's very easy).
I understand the upsides of OAuth and initially we attempted to use OAuth in more apps, however more users prefered using ldap for tighter integration, as ldap usually gives a better user experience inside the app not leaving the app first for the redirect. Also the auto login mechanism in OAuth was sometimes confusing. We won't put up the effort at the moment to support multiple auth backends directly in the app installation/configuration out of the box as that increases the testing amount to ensure proper updates.