[TRANSLOG] Cut over to Path API

This commit also refactors `RAFReference` to work on top of a Channel instead of fetching the channel from the RandomAccessFile. The channel is created to truncate the file it opens too. This likely needs some documentation or we should allow the caller to pass the open options but I wanted to get this change out for review.
Are we sure this is the correct logic? this logic means, if the file "definitely does not exist". But i think we want !Files.exists()? Unless the file "definitely exists"