Zip ui

When opening a zip in Detect Core, the implementation asks now, whether to open it, or load it directly with the old codepath.

When opening a file inside a zip (new codepath) in case of need_fullpath == true, the implementation now extracts said file to the extraction directory (if it doesn't exist yet) and runs it from there. It does not clean up afterwards to not extract isos again and again (can be implemented, if wished for).

For .zip files not much memory is required for this. For 7z files memory == filesize is required, because the LZMA C api does not allow chunked extraction.