Mr23+
feel free to tell me i'm crazy and close this MR, but for me the code works now -- even though i still don't really know what i'm doing i'm afraid.
i removed is_live
from $RequiredParams from all applicable functions, and now new contacts are created in stripe and CiviCRM, and old ones are updated if applicable.
i'm still having problems with one particular contact that exists in civic but not in stripe, but that's probably due to this being a live civic instance and i can't go and remove things as i want.