First commit as per the assignment requirement

The stub functions have been implemented in this commit