I also don't understand the need for multiple compat layers. The entire point of a public version change is the freedom to drop deprecated functionality - there's no obligation to maintain BC at all.