no real reason but whatever works
Allows correct handling now that beatmap skins are also a thing.
Used to shortcut lookup checks without potentially expensive drawable creation overhead.
Also correctly imports new skins
Also adds support for lookups with file extensions
Move path mapping to the resource store, so caching can happen against the component's name rather than the skin path. Fixes regression of beatmap load time when a custom skin is selected.
Tidy things up, move logic out of SampleInfo.