msgmodset: _nmsg_msgmodset_init(): always cleanup on function exit
msgmodset: _nmsg_msgmodset_init(): always cleanup on function exit

also, switch to a simpler open() + fchdir() + close() technique for
saving and restoring the current working directory instead of the
pathconf() + getcwd() + chdir() thing.

hstern/nmsg,hstern/nmsg,hstern/nmsg,hstern/nmsg,hstern/nmsg