pmem: support for pmem instructions on x86

- Clean up libpmem.3 man page: remove pmem_fence(), add pmem_has_hw_drain().
- Fence after flush is now part of pmem_drain() for better
  performance when using drain once for multiple ranges.
- Implement environment variables documented by libpmem.3.
- Combine new test cases into pmem_clflush_proc -> pmem_isa_proc.
- Comment at top of pmem.c explains ISA usage in detail.
The fact that we implement memcpy by calling memmove is an implementation detail.  Some libc implementations do the same thing for memcpy but they still provide both for convenience, just like we do.