Represent Dupes.PathKey directly as a ByteString

* Encoding PathKey was needlessly a multi-step process. Using ByteString
  directly matches DB interface and is much more efficient
* Something like 10x performance improvement, did not benchmark explicitly