[bug?] CCTexture2D - releases self within initWithImage()

Noticed that CCTexture2D can release itself within initWithImage() function. Not sure if that’s how it should
be, but there at least a couple of places in code where caller will be left with invalid pointer.