Have ID's automatically generated if they aren't set. Seems consistent with what we do for activities