Break cycles in grammars by dividing the former Sort into SortIdentifier and SortCall.

Tests pass, but whether this actually works with Truffle is not yet clear.