Crystal Palace and Manchester City split the riches in a 2-2 draw in an exciting Premier League game at Selhurst Park.