code: public <R, T extends R> Provider<T> getProvider(final Class<R> cls) {
          return providerFor(beanProviderFor(cls));
      }
docs: With a {@link Provider} it is possible to get an Accessor to a Bean, without initialise the Bean at the time of
  of getting the Accessor.
  
  @param cls    The Class of the Bean, used in the Configuration of the BeanRepository
  @param <R>    The Type or a super Type of the Bean
  @param <T>    The Type of the Bean
  @return a Provider for the Bean of the given Class.