[dcs] Fix NULL drealloc, add cat tests, fix cat*

Add: tests for catstr/catnstr/catwcs/catnwcs
Fix: drealloc with a NULL ptr and non-zero size caused segfault
Fix: cat* with NULL dst caused segfault (from strlen(NULL))
Fix: cat* did not update dlen