Improve Dictionary access

Do we know that this change doesn't regress performance?  Do we know that it doesn't make stack overflows more likely, since if this doesn't get inlined there are now more frames on the stack while doing the recursive processing?  I'm also unclear what this change has to do with "Improve Dictionary access", and while the elimination of gotos is nice, is it worth the churn in code that's been around for a long time and is stable?