Fixes for fetch module when connecting to Windows hosts

@abadger made changes in https://github.com/ansible/ansible/commit/f1267c0b053e5975dc08c151530c802015902242 and https://github.com/ansible/ansible/commit/bc4272d2a26e47418c7d588208482d05a34a34cd to shell plugins that weren't applied for PowerShell.

This PR adds PowerShell implementations of the `expand_user` and `checksum` methods.

I also reduced the buffer size for fetching files to 0.5MB; I was getting an IOError with some EC2 Windows hosts when using a 1MB buffer.