Added FactoryProvider, ValueProvider, and ConstantProvider
Added DecoratorProvider