Fix memory leak when raise an exception in trace_proc at creating new Image (#354)
Fix memory leak when raise an exception in trace_proc at creating new Image (#354)

We can trace creating/destroying Image by setting `Proc` object via `Magick.trace_proc=` method.

If the `Proc` object raises an exception, it causes memory leak when new Image will be created.

The `Proc` object will be called by `rm_trace_creation()` and `rm_trace_creation()` works before converting ImageMagick Image object to Ruby object.

We have to release the ImageMagick object which is not managed by Ruby's GC.

* Before

```
$ ruby test.rb
Process: 22010: RSS = 249 MB
```

* After

```
$ ruby test.rb
Process: 23262: RSS = 16 MB
```

* Test code

```ruby
require 'rmagick'

image = Magick::Image.new(20, 20)
Magick.trace_proc = Proc.new { raise }

10000.times do
  begin
    image.resize(10, 10)
  rescue
  end
end

GC.start
rss = `ps -o rss= -p #{Process.pid}`.to_i / 1024
puts "Process: #{Process.pid}: RSS = #{rss} MB"
```
rmagick/rmagick,rmagick/rmagick,rmagick/rmagick