Add a method to create a Slice from a raw memory address

Hi,

I am Taro L. Saito from Treasure Data, Inc.

Could you add a factory method to Slices class so that we can create a Slice from a raw memory address?  

This is necessary to reduce the overhead of creating slices through `wrappedBuffer(ByteBuffer)`. For example, to create a slice that represents a range of an off-heap memory, we first need to create a ByteBuffer representation of this memory region (by creating a DirectByteBuffer using reflection), then call `Slices.wrappedBuffer(ByteBuffer)` and `Slice#slice(index, length)` to specify the memory region. 

If we have `Slices.wrappedBuffer(address, length, reference)`, this process becomes more efficient.