Allow the executor to call foreign functions that return possibly-NULL strings

Previously, this caused a segfault in case of NULL as the executor tried to grab the string. Additionally, Idris code calls `isNull` on Strings for this reason, which the executor has to catch.

This pull request comes with a regression test, and adds previously-missing regression tests to `idris.cabal`.