AutoPtr change

* AutoPtr constructor from AutoPtr<Other> that does a static or dynamic cast of the pointer