Added abstract population class