Collision Bounds/Mask not working?
It was not necessary to change the parenting at all, or use python.
Your main problem was that you had not checked the check box labeled Ghost



It is also important you change the settings for the collision group and the collision masks.

Basically the head and torso are on collision group 2 and are masked so that they can collide with Every Other collision group except for the first. This is because the ground is on the first.

The main collision group is set so that it can collide with everything Except for collision group 2, because the bullets are on that group.



Notice that ghost is Not checked on bounds. This is because it needs to be able to collide with the ground. It is masked so it can collide with everything except for collision group 2, because the bullets are in that group.

The last important change you need to make is on the bullets themselves.

This is on the same collision group as the torso and head, so they can collide with everything and not cause a problem. because the collision bounds object is on collision group 1, and because it is masked so that it can not detect collisions with the bullets, the bullets will pass through them harmlessly. However, the ground is also on collision group 1, 



Using these methods, the end result is that the bullets can collide with the head and torso, the head and torso detect collisions with the bullets, and can decrease health/armor accordingly. The main physics object (bounds) can only collide with the ground. the bullets can also collide with the ground.