Extending Just Works™

package Your::Point3;

use Badger::Class
    version     => 3.142,
    debug       => 0,
    base        => 'Your::Point',
    config      => 'z|class:Z',
    set_methods => 'z',
    vars        => {
        Z       => 0,
    };
Thus Spake Andy:

We can create a subclass of Your::Point and extend it like so. Here we're adding an extra z config item, a z() mutator method and a $Z package variable. We don't have to worry about our init() method doing any of that $self->SUPER::init($config) nonsense. A custom configure() method will be generated for this subclass which handles all of the config items defined in this class and all of its base classes. So we get a configure() method that knows about x, y and z and processes them all in one go.