>Is there an app that, when given a URL, returns the source document?
>There must have been something like that already developed and I really do
>not want to re-invent the wheel.
You might try telnet, we use it for testing.  Given a usl, say:
URL:http://void.nowhere.edu/goodies.html
> telnet void.nowhere.edu 80
Connected to void.nowhere.edu.
GET /goodies.html HTTP/1.0        <--- you enter this + CRLF, CRLF
HTTP/1.0 200 OK                   <--- response starts here.
...etc (document following)
Bob J