Removed the EmptyBaseClass to take advantage of EBCO (Empty Base Class Optimization)