making sure all structures have constructors and initialize all members

Though the trend is to default initialize structure members, where the
conceivable potential for the default initialization value to
interfere with the programs accuracy exists, a different
initialization value is used. This patch is to help reduce the risk of
undesired "surprises" resulting from potentially otherwise
indeterminate values.