http://machinename[:portnum]/pathname, where the part in
[] is optional, into (1) host IP address, (2) port, and (3) path.
Hostnames that fail to be resolved must return some
sort of error to the calling application.
You may not rely on any intrinsic Java objects that do URL parsing for you.
HTTP 1.0 Specification at http://www.w3.org/pub/WWW/Protocols/HTTP/1.0/spec.html
For extra credit, make Part 3 support FTP URLs and requests [8%]. And/Or add support in Part 3 for tracking URL and webserver statistics [4%]. The proxy should display stats for URLs requested, errors, webserver IP address breakdown, etc. when it receives a SIGUSR1 signal.