disallow assignment if unassigned villagers <= 0; fix tooltip formatting; add implement stock component