First commit, adding function templates as given in the assignments