Add a "cutoff" option for pruning call tree

The fraction of time spent in a child of a function is compared to the cutoff
and if it is less than the cutoff the child is added to the call tree
but none of its children are.

The default threshold is 1 / 1000, with options for 1 / 100 and no cutoff.