You have also mentioned the very long waiting times for permits renewal.
When somebody leaves a job but gets another one in Canada from an employer who could offer a contract, the waiting time is relatively long. I know a case where the person had to also renew her permit so as not to be illegally in Canada. But the government had to wait for the approval of Human Resources and Skills Development before issuing that permit, because that person did not have a valid contract in Canada and she could be refuses a permit.
Couldn't we allow that person to make two applications at the same time, one for the work permit and one for the contract, to join those applications to reduce the stress? Don't you think this could be a good solution?