Premier League champions Manchester City have signed a long-term kit deal with Germany's Puma, replacing their current agreement with Nike.