benecaster_register_template_directory()
Registers a directory that Benecaster will look in when resolving template parts, so an add-on can ship its own parts and override core’s defaults. Call it from a benecaster_boot callback.
The reading half of the template layer already existed — benecaster_get_template_part(), benecaster_locate_template() and benecaster_get_template_path(). This is the registration half: until it shipped, the loader searched a hardcoded three-element list with no filter on it, so an add-on had no way at all to add template parts.
The directory mirrors the plugin’s templates/ structure — a file at {$path}/episode/title.php answers the template name episode/title. Core does not need a template of that name for it to work: an add-on can ship parts core has never heard of and load them with benecaster_get_template_part() like any other.