Corrected Rex::Text.uri_encode

Rex::Text.uri_encode currently encodes _ and ~ but it shouldn't:
http://tools.ietf.org/html/rfc3986#section-2.3

See pull request #3094 for an example

The function also skips / and \ which should be encoded too, but I think when we change the slashes this will break a lot of exploits. What do you think?

PS: normal_na was an unused variable