refactored AssetLoader classes