Fix #4115 - iis_webdav_upload_asp.rb should support http auth

HTTP auth is already implemented in Rex so there is really no point to say it can't do it. I also changed the error/warning messages to be more informative about why the module fails.

## Setup for verification

- [x] Windows XP SP3
- [x] IIS 5.1. If you don't have this, you can install it from the Windows Components Wizard.
- [x] For testing purposes, make sure no firewall
- [x]  After the IIS installation, create a folder in C:\Inetpub\wwwroot\upload
- [x] Add a new user "Everyone" to the "upload" folder, and grant "Full Control" to it. You need this setting for Verification 1. But Integrated Windows authentication doesn't need this setting.
- [x] Make sure you know the password for the default Windows user (which I think is Administrator). Set one if it's blank: ```net user Administrator [password]``` in command prompt.

- [x] Go to Administrative Tools -> Internet Information Services.
- [x] Right click on the 'upload' folder, go to Properties
- [x] Check Script source access
- [x] Check Read
- [x] Check Write

## Verification 1: Test without auth

- [x] Start msfconsole
- [x] ```use exploits/windows/iis/iis_webdav_upload_asp```
- [x] ```set rhost [IP]```
- [x] ```set path /upload/test.asp```
- [x] ```run```
- [x] You should get a session

- [x] When you're done with this test, make sure to remove C:\Inetpub\wwwroot\upload\test.asp for the next test.

## Verification 2: Test with Windows authentication

In order to test authentication, you need to Administrative Tools -> Internet Information Services and configure a few things:

- [x] Right click on the 'upload' folder, go to Properties
- [x] Click on the 'Directory Security' tab
- [x] Click on 'Edit' under 'Anonymous access and authentication control'
- [x] Uncheck 'Anonymous access'
- [x] Check 'Integrated Windows authentication'

Ok, then you're ready to test:

- [x] Start msfconsole
- [x] ```use exploits/windows/iis/iis_webdav_upload_asp```
- [x] ```set rhost [IP]```
- [x] ```set path /upload/test.asp```
- [x] ```set username [valid username]```
- [x] ```set password [valid password]```
- [x] ```run```
- [x] You should get a session

If you want, you can also test with a bad username/password too. In that case, you should see "401 Access Denied" when the module tries to upload the ASP file.

- [x] When you're done with this test, make sure to remove C:\Inetpub\wwwroot\upload\test.asp for the next test.

## Verification 3: Script source access permission

Before you test this, make sure that:

- [x] You are still using the same auth instructed from Verification 2
- [x] Back to your IIS manager, right click on the 'upload' folder -> Properties
- [x] Make sure the "Script source access" is unchecked.
- [x] This time, your exploit will fail, and you should see this message: "The MOVE verb failed to rename the file. Possibly IIS doesn't allow 'Script Resource Access'."

## Verification 4: Read permission

- [x] Still the same auth from Verification 2
- [x] This time, make sure 'Read' is unchecked. (but the other two such as "Script source access" and "write" should be checked)
- [x] Run the exploit, and you should see: "IIS possibly does not allow 'Read' permission"

## Verification 5: Write permission

- [x] Still the same auth from Verification 2
- [x] This time, make sure 'Write' is unchecked. (but the other two such as "Script source access" and "read" should be checked)
- [ ] Run the exploit, and you should see: "It's possible either you set the PATH option wrong, or IIS doesn't allow Write permission"