(tried to post this as a comment on my last post, but couldn't get it to work ("your reply must include text in the body", whatever that's supposed to mean, after i just typed 300 chars)) ... anyway ...
i guess if you think about it in a certain way, it makes sense: apple doesn’t know that, for example, we were only using those “apps” for testing; they have to assume that any app will possibly make it to app store distribution at some point. since apps need to remain available for download (by users who downloaded them before, even after removal), apple can’t allow the re-use of those bundle IDs for a different app.
however, it would still be nice if there was a button somewhere to say "i'm never going to use this bundle ID for anything real, so let me actually remove it", which would then mark the ID for possible re-use if no app with that ID was ever live on the store (e.g., it was only ever used for testflight, which was why we ran into this problem when trying to transfer one of our apps to a different company ...)