A JavaScript framework for scalable and maintainable SPA. Inspired by NZakas  and scaleApp