switch over to the written solv files to save memory
use REPO_LOCALPOOL when loading the filelist extension

Otherwise all of the directory component ids pollute our
main pool.  And repo_add_solv is faster this way, too.
call hy_repo_link when setting the appdata of the system repo

Otherwise our repo data is freed prematurely.
also set the repodata id if an extension is loaded from the cache
rewrite repos after calling addfileprovides

This should speed up operation of the library users quite a bit.
refactor rewrite_repos function
cosmetic: some cleanups of 0e4327c.