More complete provider that prevent rerunning if we are already created.  Added logging