Added more Gradient functionality

Added more Gradient functionality in the step function. Singleton
pattern has to be implemented and tested.