Branch Point Testing And Supervised Pseudotime Inference For Single Cell Data