Current successes and remaining challenges in protein function prediction