When adding a dependent or parent ticket, the choice field in the
ticket selection form excludes:
- All existing dependencies of the current ticket.
- All existing parent tickets of the current ticket.
- The current ticket itself.
The first two prevent immediate circular references: A dependency
cannot be a parent and vice versa. Deeper circular references are
not covered by this: a ticket can still be its own grandchild.
They also prevent current behavior of throwing an `IntegrityException`
when selecting a dependency or parent.
The third one prevents also a quirky behavior: until now, specifying the
ticket itself as parent or dependency just does not save the
dependency and does not issue a warning either.