Rename "Base" to "Factory" class, because name is ambiguous