personal web server implemented:
 * can download, cache and serve data;
 * supports caching for partial requests.