add preloader module, restructure code
fix profile user update