Add ProviderInterface, stub concrete provider & ResultCollection
Add ext-curl to composer requirements