The whole thing is essentially a workaround for lack of sufficiently good/easy ways to package code in the ways people want to use it.