Add USES=7z support: common way to extract 7-Zip archives
By default, it tries to take advantage of libarchive and falls back to p7zip.
Extracting only selected few DISTFILES is also supported via :partial argument.
Approved by: portmgr (bapt)
Differential Revision: https://reviews.freebsd.org/D4190