replaced confess with throw_exception
wrote tests for Calling(ReadOnly)?MethodOnAnImmutableInstance
wrote exceptions Calling(ReadOnly)?MethodOnAnImmutableInstance