Change smart_array to have unique_ptr as member variable rather than deriving from it