Fix a typo and some inaccuracies regarding integer divisions if arguments are integer
Add several test cases to at least insure the procedures have no obvious errors