(NC-157) Error when a group is its own parent
(NC-157) Detect inheritance cycles larger than one group
(NC-157) Detect cycles in get-ancestors
(NC-157) Make sure cycles can be fixed

Test that you can break a cycle by altering the parent_id of a group in the
cycle. This required making get-subtree* not follow cycles involving the root
of the subtree. It is not protected from cycles further down the subtree.
(NC-157) Include offending cycle in the inheritance-cycle exceptions
(NC-157) Return a nicer error in the JSON for cycles
(NC-157) Document error response for group inheritance cycles