A shell that uses objects is asinine. It looks like a bunch of java idiots tried to make a shell. If I wanted objects I would use a programming language, this is supposed to be scripting.
What's asinine is dealing with a bunch of text parsing BS every time I want to pipe some simple data from one program to another. Code to deal with spaces and weird symbols, to convert between hexadecimal and integers and comma-filled integers, to exclude header and footer lines. It wastes a lot of time and makes my scripts failure-prone. I'm speaking as somebody who has a lot of Unix experience and has barely used Powershell, so I don't know how Powershell stacks up in practice, but it's clear to me that an object system is superior in principle.
"When the going gets tough, the tough get empirical." -- Jon Carroll