Fix #3974 - Validate and normalize URI for axis_login

This fixes https://github.com/rapid7/metasploit-framework/issues/3974

It will validate and normalize the URI before using it in a request, based on the following wiki:
https://github.com/rapid7/metasploit-framework/wiki/How-to-Send-an-HTTP-Request-Using-HTTPClient#uri-parsing

## Verification:

- [x] Download Axis2: http://axis.apache.org/axis2/java/core/download.cgi
- [x] Install it: http://axis.apache.org/axis2/java/core/docs/installationguide.html#standalone1
- [x] Make sure the login part is working properly: /axis2/axis2-admin/login
- [x] Start ```msfconsole```
- [x] ```use auxiliary/scanner/http/axis_login```
- [x] ```set rhosts [IP]```
- [x] ```set username [valid user]```
- [x] ```set password [valid pass]```
- [x] ```set stop_on_success true```, but you don't have to if you don't want to.
- [x] ```run```.
- [x] You should not see a "The Axis2 login page does not exist at xxx" error.
Actually, it flags this: ::URI::InvalidURIError