Adding caching to kpm restore

use -r or --refresh argument to force refresh of cached data
during a restore
Using the same HttpClient for all requests to a source
Fix local caching for kpm

- Add "--no-cache" flag to control use of local cache
- Add feed pagination handler and cache all pages