Related to #3, with the help of an assembler that doesn't suck, it's possible to split the zero page among all the functions, getting rid of the whole zero page template nonsense. This would also be possible without help from the assembler, but currently we spam the zero page with a bunch of constants, making larger programs exceed the available space. A better assembler could place these constants in line with the code, making a static zero page allocation worthwhile.
This issue appears to be discussing a feature request or bug report related to the repository. Based on the content, it seems to be still under discussion. The issue was opened by clausecker and has received 0 comments.