Consolidated ReloadableASTElementFactory and a handful of Matcher classes