Refactored by amsonmal,okdalvi,apnair

E819 Refactoring and Testing-assignment
OSS Project Fall 2013