move sourcing base_fetch to base, it is not ruby specific