fix race condition when pinentry is closed before it's finished being created
fix external pinentrys

by using an abstract domain socket instead of a file-backed socket
this is because we can't chown nor chmod for different app uids
without root. we still authenticate using SO_PEERCRED.

woot.