private URL encodeurl(URL raw) throws IOException {
			/*
			 * This is "kinda" ugly. It is, actually, how the Java documentation
			 * recommend that it be done, though...
			 */
			try {
				return (new URL(new URI(raw.getProtocol(), raw.getHost(),
						raw.getPath(), raw.getRef()).toASCIIString()));
			} catch (URISyntaxException e) {
				throw (new IOException(e));
			}
		}