Changing lsdir to consistently return an slist

If a directory is passed to lsdir which does not exist, it will return
the mismatched type scalar, as compared to its normal return and the
dictated return type in its function definition entry of slist.  This
causes all evaluation to stop in the event of a missing directory due
to mismatched assignment in a var designated as slist.