Place InferArgumentTypesSuite in the right package

This has no effect besides consistency
Fix argument type inference

- Consider any procedure taking a world pointer as a possible
  terminating step as it possibly can throw an exception.

- Look for terminating steps in the main body of the procedure in
  addition to nesting steps.