make assignment targets subclasses of assignment to have access to assignment data