Fixes: 1. Cache should not be mandatory - `__construct(array $base_paths, Cache $cache = null)` 2. Need set setBasePaths and isHiddenFile as public 3. Why listFiles not supported subdirectories? Old Kohana::list_files() more powerfull than this. 4. ``` public function isHiddenFile($filename) { return in_array($filename[0], ['.', '~']); } ``` 1. load: include better than require_once, because we can't catch fatal errors, we use it's not only for class files.