Using std::shared_ptr for preventing memory leaks in V8StringToChar

Using std::shared_ptr in V8StringToChar

Adding &* to invocations of V8StringToChar
unique_ptr use
Added release to make equivalent to initial origin
Checked unique_ptr going out of scope
Removed a line
unique_ptr is used to remove memory leak in V8StringToChar
removed header <memory>