many changes
remove Preloader, move the features to CacheProvider
some changes