Productivity check fix
Guardedness check didn't actually check it was under a constructor!
Coinductive types do not get smaller! Fix size change graph builder.
Look through call graph for mutual recursion when productivity checking
Otherwise we might miss non-productive calls, particularly important
when using 'with'.
Fixes issue #183