Some stuff about Zygarde:
There's some interesting stuff to be found when you look at Zygarde's stats, particularly the changes between forms.
Zygarde 50%'s BST is 600. Its stats are:
108
100
121
81
95
95
There's a noticeable trend where mons that have high HP stats will often be have large bodies, be round, bulbous, stocky, etc. HP seems to loosely correlate to body mass. See Snorlax, Slaking, Wobbuffet, Guzzlord, Chansey, Reuniclus, etc. On the other end of the scale, Ghost types often have very low base HP because most of them lack a solid body.
Zygarde has a high HP stat because it's a large, bulky snake that's made up of lots of little parts. This theme continues with its other forms. Their stats, for comparison:
10% - 54 HP / 100 Attack / 71 Defense / 61 Special Attack / 85 Special Defense / 115 Speed
50% - 108 HP / 100 Attack / 121 Defense / 81 Special Attack / 95 Special Defense / 95 Speed
100% - 216 HP / 100 Attack / 121 Defense / 91 Special Attack / 95 Special Defense / 85 Speed
Complete form has 2x the base HP as 50% form because it's made of twice as many cells. 10% form has exactly half the base HP of 50% form instead of 1/5th (probably for balance reasons).
Then, looking at the other stats, Complete form has a BST of 708 instead of 680 like you'd expect of a "proper legendary." 10 is taken from Speed and moved to Special Attack, because it becomes heavier, slower, and stronger.
Looking at 50% to 10%, it loses 50 from Defense and 10 from Special Defense, then 20 is moved from Special Attack to Speed - the Speed difference is twice as much as 50% to Complete form's.
I don't really get the changes to Zydog's stats. Halving 50% form's HP follows the theme, but they could have easily given it base 10 HP and a blazing Speed stat. It loses defenses because it's a speed-focused attack form, and it loses Special Attack where Complete form gains it. More cells = more Special Attack power. Maybe this is why Core Enforcer is a special move?