No, there is not. It is possible, according to this post:
http://www.youdidwhatwit...raries-in-powershell/538
But, it won't be very effective as you lose the typed objects and still have to get to know every class you want to use. You will complete this in much less time with pure .NET.
On a related note to the above, once you have a connection established, it is just as easy to explore what's available as it always is in Powershell.
I put together a quick script that used the API through powershell to get a list of all tasks that are currently running and have been running for longer than they took to run the last time they ran; maybe I should post that here when I have access to it again.
I realized that wasn't nearly as useful as I was thinking it would be after I wrote it, because of the number of tasks we have that run on a short interval to poll for work and complete much faster when there isn't any, but it was a good exercise in understanding the API.