(CFACT-91) Fix external-dir with a relative path

Allow a relative path to be specified on --external-dir. We still
enforce internal APIs for external facts to use absolute paths. Fixes a
bug that allowed it to work depending on environment setup.