Barcelona's Messi wins 2012 Fifa Ballon d'Or