Initial Code Added

Added main code and test suite.