Part 1 of 2: Bug 25495: Implement PassOwnPtr and replace uses of std::auto_ptr