Combination of quality of life improvements, bugfixes and splash support:
* unzip_file now works with any file, not just a theme
* Made linked list nodes generic so they work for both splashes and themes
* Fixed bug in previous commit with deleting the zip file once it was unzipped
* All zips in /Splashes/ are now extracted, as with /Themes/
* Splashes are all added to the linked list properly
* Splashes can be installed given a path, but only works on Luma. Undecided as to whether or not I'm going to change this.
TODO:
* Automatically change the luma configuration to enable splash screens
* MAYBE add support for other CFWs (if there's an interest). Maybe set a folder to extract splashes to in some kind of user settings?
What this commit adds:
* Ability to apply a theme, given a folder
* Extract all .zip files in /Themes/ into a relevant folder
* Get all theme metadata from info.smdh
* Proper unicode handling
What's still needed for initial release:
* Theme shuffling
* GUI