public static Builder IfMatchesExactly(this Builder builder, string filename)
 => builder.IfMatches(input => input == filename);
 public static Builder IfFilenameEndsWith(this Builder builder, string filter)
 => builder.IfMatches(input => input.EndsWith(filter));
 public static Builder IfMatches(this Builder builder, string pattern)
 => builder.IfMatches(Helpers.PatternToFunction(pattern));
 public static Builder IfMatches(this Builder builder, Regex regex)
 => builder.IfMatches(regex.IsMatch);
 public static Builder UseFallbackToFile(this Builder builder, String pattern, String fallbackFile) => builder
 .IfMatches(pattern)
 .Use((filename, provider) => provider.GetContent(filename))
 .WithRouterPriority();
 public static Builder UseStaticContent(this Builder builder, String pattern, String content) => builder
 .IfMatches(pattern)
 .Use(content)
 .WithPreProcessPriority();