Preset default values for required fields only, populate omitted optional defaults on decode, fixes #179