Enhancements to `ConfigurationExporter`.

+ In `getRelationshipTypesAsDOM`, fix nesting of `if` statements -- skip the
  `appendChild()` calls if there is no `nextRow()`, previously it was skipping
  only the `get("type_id")` call and still executing the other part.
+ Add `makeIDNOFromInstance()` method, which uses the field info `BOUNDS_LENGTH`
  as the maximum value length, and then delegates to existing `makeIDNO()`.
+ Add parameter to `makeIDNO` for length, with default of 30 (previous hardcoded
  value), to support calls via `makeIDNOFromInstance()`.
+ In `getListItemsAsDOM()`, cache the generated idno value for efficiency.
+ Documentation / type hints.