move recursive resolving dependencies into Provider

for that Provider needs a reference to ProviderList which is set now

this makes it possible to implement more complicated dependencies like needed for modernizr
add support for modernizr dependencies