epg: Improve error handling

* epa.el (epa-error-buffer): New variable.
(epa-display-error): New function.
(epa-decrypt-file, epa-verify-file, epa-verify-region)
(epa-delete-keys, epa-import-keys): Display output sent to stderr.
(epa-sign-file, epa-sign-region, epa-encrypt-region)
(epa-export-keys, epa-insert-keys): Display output sent to stderr.
Use setf instead of epg-context-set-*.
* epa-file.el (epa-file-insert-file-contents): Use
epa-display-error instead of epa-display-info.  Mimic the behavior
of jka-compr when decryption program is not found.
(epa-file-write-region): Use epa-display-error instead of
epa-display-info.
* lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Optimize away trivial
uses of `funcall'.
* lisp/subr.el (pop): Don't call the getter twice.
epg: Fix the last commit

* epg.el (epg-context): Initialize ERROR-OUTPUT as "" instead of nil.
package.el: Display output sent to stderr, when verification failed

* emacs-lisp/package.el (package--display-verify-error): New function.
(package--check-signature): Use it to display output sent to stderr.