MooseX::AbstractFactory