Isn't the issue because we are reluctant to remove stuff?
In the same vein as other said we should throw away one or two version of a program before shipping it.
Maybe we need to learn how to delete stuff that doesn't make sense.
Get rid of broken test. Get rid of incorrect documentation.
Don't be afraid to delete stuff to improve the overall program.