Add fetcher and tests