in reply to URI Inheritence

While I have nothing to offer for the rest of your post,

The pass-through methods are unlikely to be updated regularly… is there an automagical way to maintain these safely?

I can answer: Yes. Class::MethodMaker supports creating forward methods. This makes your methods for forwarding be one line in a use Class::MethodMaker scenario, as in

use Class::MethodMaker get_set => [ qw/uri/], forward => [ uri => [qw/param field validate/]] +;

where param field and validate are all forwarded methods that you want.

Hope this helps