featureflag: allow overriding FlagSet in tests
Created by: keegancsmith
I want to test outcomes of different feature flags being set in the backend. It was tricky to do this with the flagSetFetcher type, so I adjusted the implementation to be based on flagSetFetcher.Fetch function signature. To do this I pulled out the Fetch function and instead relied on a closure capturing the variables instead of the struct.