fixes ofPtr

adds non-explicit constructor  from shared_ptr so it can be used as one + imports everything related to smart pointers from std::tr1 into std:: so the syntax is clearer