all entity classis are serializable and comparable; also all outputs are going through a logger