Webgpu playground examples broken

I am trying to run some webgpu playgrounds but it seems to have been broken

Yes, there have been a number of changes in the spec / implementation of Canary and we need to catch up on the implementation. This will be done before the release of v6 (so before the end of this month).

In the meantime, this PR should fix the most annoying problems and make most existing playgrounds work, at least: