def check goal=nil, &block
      goal ||= block
      result = nil
      begin 
        result = goal.true?
      rescue
        check_raised_exception goal, $!
      else
        if result
          check_passed goal, &block
        else
          check_failed goal, &block
        end
      end
      result
    end
def check goal=nil, &block
      goal ||= block
      result = nil
      begin 
        result = goal.true?
      rescue
        check_raised_exception goal, $!
      else
        if result
          check_passed goal, &block
        else
          check_failed goal, &block
        end
      end
      result
    end
Tries to prove goal (or block if goal is not given). If it proves, calles
 +check_passed+. If it fails, calls +check_failed+. If it raises an exception, calls +check_raised_exception+.