Defining classes to support persistence