MooseX::ConfigFromFile v0.02 from PR pkg/42025 with some modifications.
This is an abstract role which provides an alternate constructor for creating
objects using parameters passed in from a configuration file. The actual
implementation of reading the configuration file is left to concrete subroles.
It declares an attribute configfile and a class method new_with_config, and
requires that concrete roles derived from it implement the class method
get_config_from_file.
Attributes specified directly as arguments to new_with_config supercede those
in the configfile.