Have fetchers support rewinding and add builder to encapsulate construction

This call seems strange here (the object was just constructed, why does it need to be rewinded?) and is also not necessary.