Well, I did some playing around with this, and some studying, and it's not possible with just sockets. There's allusions to the possibility of it being done with curl, but nothing solid. The curl people have a team together to try to build support for this into curl, but not done yet.
There is some hope though, depending how far you want to take it. More nix systems have sftp installed already, so interacting with that shouldn't be too hard. Windows could download putty sftp, which also has full command line capability. I'm willing to pitch in if someone wants to have a go at trying to make this...