Added Docstrings for future reference. Need to implement the whole thing in an object oriented manner.