division added along with some tests