Reorganize the JavaScript into more modular components;
Improve the favicon