During installation, you are allowed to add a database table prefix. The default is "sos_". If you choose the prefixes like this:
"teacher_01_"
"teacher_02_"
"teacher_03_"
They will all be able to use the same database. MySQL is very robust, so several of these not-high-traffic sites could be used with the same database. I don't know if thousands of tables in a MySQL database will be slow, but if you used a different database per grade or per school it would certainly ease your workload.
-----------------------
I would also be interested in the opinions of teachers as to what they would like added. I could make new modules. I am also a teacher and have considered the same.