Moves some exception processing to a REPORTER interface so we don't
leak a bunch of memory by exiting early.
Also adds some assertion processing to make sure we're not leaking
in other places.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15158
- Correctly find the library paths for new and old LTspice versions
- Use case insensitive comparison (store element names as lower case in the map)
- Better search paths
- Allow user to copy contents of LTspice "lib" folder to the same folder as file being imported
Partially addresses https://gitlab.com/kicad/code/kicad/-/issues/15061