What is an abstract class