Invoke ls on directories, cat on files
Core APIs used by catls
Splitting shell strings while preserving SGR escape sequences