Added safeguard so that empty animations don't crash the game and warn about it in the console.
Added custom icon loading
Reworked resource collections so they don't require preloading. The typical use would anyways immediately use textures during the loading stage. Now instead, it keeps track of what thread is loading the resources. If it loads from the rendering thread, it will complain in the console.
Updated the interface of State to use const references
Removed generation of mirrored frames from Spritesheets since they didn't work properly with the rendering.