Reuse LD_STRING_OR_BUFFER_TO_COPY() macro in ToSlice() function
Reuse LD_STRING_OR_BUFFER_TO_COPY() macro in ToSlice() function

The ToSlice() function corresponds to the old LD_STRING_OR_BUFFER_TO_SLICE()
macro with the exception that we _always_ copy the buffer/string. I've
chosen this approach for the following reasons:

* We use the _same_ code for copying buffers/strings for iterators (e.g.
for lt, lte, gt, gte etc)
* The code for handling cleanup of leveldb::Slice() should always cleanup
the underlying buffer (since we always copy)
* For simplicity. At the moment of rewriting to napi it's a lot to keep
in the head to move forward.

Later on we should benchmark this and tweak/optimize if needed. Maybe it
has a huge impact on performance, but until we know this for sure, I think
we can simplify with good conscience.

The difference between old LD_STRING_OR_BUFFER_TO_COPY

Level/leveldown,Level/leveldown,Level/leveldown