i'm currently using polylang and am very confident with it. works nicely with all other plugins i got and well well ... good job.
the one thing i came across though is, that the <link rel="alternate" hreflang="x"> implementation does not quite follow google's recommendation.
If you have multiple language versions of a URL, each language page in the set must use rel="alternate" hreflang="x" to identify all language versions including itself. For example, if your site provides content in French, English, and Spanish, the Spanish version must include a rel="alternate" hreflang="x" link for itself in addition to links to the French and English versions. Similarly the English and French versions must each include the same references to the French, English, and Spanish versions.
so this is what's missing: the self-reference. - i could dive into it and hack it myself easily, but this an easy fix! please include that request in a future update, would you?!