Added AbstractEntity class