Actually with a dedicated "list purchase" channel, you would set the AP to this program (which was a separate program with a "list purchase" channel - not a LP program). That's how we used to do it. We did away with this channel, since it wasn't reflective of true attribution/engagement. Now, when we import lists (since a very small % is a result of a list purchase - I actually want to get this down to 0%), we either import them directly within the program where they will be used; or in a central list in Database.
As for giving credit, no credit should be given if the imported lead never engaged. So not a problem for us. When they do engage, they'll receive the AP name of the program where that took place.
When we used to do list purchases we did the same as you, Dan, with the exception that we have a 'lead source detail' field that we would populate 'list purchase' (today that's mainly the details of the channel, Facebook to the Social Lead Source, for example). We were generally purchasing lists for specific campaigns, so the AP defaulted to being the program we used it in -- but both interesting and curious about leaving it blank until they actually engage. What was that rate of engagement? Did you see a big chunk never engage (a la killing the channel)?
We sure did see a big chunk never engage - especially when some of our regions insisted that purchasing lists of highly segmented contacts were needed to execute a campaign. As you and I both know, response rates will be far below average (when compared to those contacts that engage and establish a relationship on their own terms with your brand). So this was dual-purpose - to also show that there was a very poor response/engagement rate when reporting on these specific audiences. Not to mention the high unsubscribe rate and low deliverability rates.