Fix a macro for the hardware-reduced case

This fix repairs a version of a macro that is used for the hardware
reduced case only. It adds a return statement to the macro definition
so that the AcpiSrc translation will not completely delete the second
line of the macro because it thinks that it is an empty block. It actually
clarifies the use of the macro anyway.
Debugger/Apps: Add safe versions of common string functions.

This change adds and deploys "safe" versions of strcpy and strcat that
ensure that the target buffer does not overflow. These safe functions
are only helpful for processing user input and command lines. For most
ACPICA code however, the required buffer length is precisely calculated
before buffer allocation, so the use of these functions is unnecessary.
ACPICA BZ 1043.