@authors: Haroun H. and codedecde. Our implementation of : http://www3.cs.stonybrook.edu/~porter/courses/cse591/s14/lab1.html It was created for our Final project in COL331, 2015-16. TODO: Provide details.