I would recommend adopting more modern coding guidelines and techniques i.e. DI instead of singletons. When you are writing your own framework I would highly encourage looking at other frameworks to learn from them.
Well, I would (should) change the database class and router to be DI, but as for the other (few) singletons, they aren't used that much and are only sprinkled in places. I prefer the cleaner look with lazy-loading, just my opinion...
Might I suggest a few tools that have really helped me:
[1 CodeSniffer - Set up some code rules!
[2] Codacy - Good PHP support / An alternative is CodeClimate
[3] PSR guidelines - This should help with some standardizing.
-----
I'll be reviewing this more in depth later. Best of luck!
[1] https://github.com/squizlabs/PHP_CodeSniffer
[2] https://www.codacy.com/
[3] http://www.php-fig.org/psr/