Refactor fetcher into a struct and method