Distinguish between adding a requirement as its child and as its parent, add checkboxes in the table of possible sub-requirements, and prevent cyclic requirement dependencies (#121)