bpo-30645: don't append to an inner loop path in imp.load_package() (GH-2268)

Bug didn't manifest itself when importing a module with source as .py files are always the first on the search path. The issue only showed up in bytecode-only packages where the calculated file path would be ``__init__.py/__init__.pyc``.

Patch by Alexandru Ardelean.
diff --git a/Misc/ACKS b/Misc/ACKS
index 4f98e98..eaff172 100644
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -57,6 +57,7 @@
 Heidi Annexstad
 Ramchandra Apte
 Éric Araujo
+Alexandru Ardelean
 Alicia Arlen
 Jeffrey Armstrong
 Jason Asbahr
diff --git a/Misc/NEWS b/Misc/NEWS
index 55e5bce..fc9e1de 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -428,6 +428,10 @@
 - bpo-30508: Don't log exceptions if Task/Future "cancel()" method was
   called.
 
+- bpo-30645: Fix path calculation in `imp.load_package()`, fixing it for
+  cases when a package is only shipped with bytecodes. Patch by
+  Alexandru Ardelean.
+
 - bpo-11822: The dis.dis() function now is able to disassemble nested
   code objects.