next: properly handle cases when user selects an aspiring child
When there are ambiguous next changesets and only some of them need to be evolved, and user picks one of them, next used to simply update to it without evolving. Now we check if it's an aspiring child and evolve it before updating to it. In test-prev-next.t, this case was previously handled by a separate hg evolve --update call. Without this fix, hg next would simply update to the revision 5 ("added d", which is still unstable) without evolving it. Thanks to Sebastian Unger, who spotted this bug on Evolve Testers mailing list.