creates a decision tree given a set of data