Create ByteSource to source bytes from

Now we can wrap buffers ourselves and release them
properly.
All of tomcrypt.cipher uses ByteSource