Change ipfs paths to include directory where ipfs repo is stored.
Rework ipfs-chat to create ipfs chunkstores manually rather than
relying on Spec.ForDataset. This enables creating two chunkstores
(one local and one network) using the same IpfsNode (ipfs repo).
Create separate replicate function for daemon and mergeMessage
function for client to experiment with slightly different behaviors
for each.
The PR contains the latest changes to the IPFS portions of the chat program. There's lots of code duplication between the ipfs and p2p parts of the program.