fix(api) Avoid creating objects with a null id

This fixes a bug where `INThread#reply` sets various fields, but not
`id`.  This caused `INModel#isUnsynced()` to return `false`
erroneously, which finally caused `INDraft.dispose()` to fail by
submitting an unnecessary API request which was malformed.