Partition point

Added partition_point algorithm and test