Removed smart pointers from public headers