I've decided to go ahead and post the PowerShell library I have been working on to Codeplex. I wanted to explain various bits of it here before pulling it all together, but that is taking more time than I wanted. I've provided early copies to a few people - John Kelbley used them to good effect at the US tech-ed recently - and I haven't had too many bug reports so I've decided to broaden the audience.
There's lot's of good stuff happening in Hyper-V and scripting right now. Taylor Brown has a blog with more examples in PowerShell; Ben Armstong has some good stuff too; Ben's more of a VB guy than a PowerShell one and I'll probably continue to tease him gently about the fact ... he has a very long script. to compact a VHD. Mine is a 4 line function. Interestingly Taylor's post contains a "Wait for WMI Job" function and Ben has built in. I might write a similar function and give my functions which return Job IDs a "-WAIT" option in the next major revision. I picked out Taylor and Ben because of their blogs but there have been other people inside Microsoft who have been a great help pulling this together, I wish I'd kept a list of who had pointed me to this or that so I could thank them.
The source code is open (as Powershell tends to be) and distributed under the Microsoft public license (MS-PL).