should this be a public class or a package only class?