This is more dependable, and when we know the package name we can
glob inside it to get all files such as bin or ttf files.
This will allow e.g., 5x8.bin & ov5640_autofocus.bin within
bundles.
the behavior of bundlefly and circup when encountering .bin files
needs to be checked.
Tested by building modified pycamera bundle and the autofocus.bin file
appears in the generated zip files:
```
pycamera-py-ec67bde/lib/adafruit_pycamera/ov5640_autofocus.bin 4077 4096
pycamera-8.x-mpy-ec67bde/lib/adafruit_pycamera/ov5640_autofocus.bin 4077 4096
pycamera-9.x-mpy-ec67bde/lib/adafruit_pycamera/ov5640_autofocus.bin 4077 4096
```
There's at least one library in the bundle that has incorrect metadata
and that leads to an error:
https://github.com/adafruit/Adafruit_CircuitPython_Colorsys/pull/29
This is a weird one since some devices have it in core now, and others don't.
This happened in part because I copypasted the list currently in pipkin instead of tweaking the existing list, which was initially added with this module in the list: b9957133a9
The code generates a temp file with the library version.
By mistake that was ALWAYS copied back to the mpy file for single file libraries.
The temporary files for the package libraries were also not deleted.
For windows compatibility, the temporary file must be copied (and therefore erased) outside of the with block. In this PR we only keep the temporary file open the time to write to it, and then do the rest.
In Micropython 18 (and CP 7.3.0) there are some language fixes to previous syntax errors in f-strings, and maybe others.
A string like this would not compile prior to 7.3.0:
```py
string = "123456789"
print(f"{string[2:6]}")
```
Note that an MPY file with that code generated with mpy-cross 7.3.0 runs properly on 7.0.0 according to my tests.