Current solutions: While there are many products which allows you to download entire sites, but most of them are paid ones. The free ones have link-depth constraint [for e.g you cannot download more than 1 link-depth: webaroo.. etc ].
My suggestion: Try out HTTracker Website copier.
It allows you to download a World Wide Web site from the Internet to a local directory, building recursively all directories, getting HTML, images, and other files from the server to your computer.
HTTrack arranges the original site’s relative link-structure. Simply open a page of the “mirrored” website in your browser, and you can browse the site from link to link, as if you were viewing it online. HTTrack can also update an existing mirrored site, and resume interrupted downloads. HTTrack is fully configurable, and has an integrated help system.