Implementation of decision tree from scratch along with analysis of its performance with different types of impurity measures