[libc][uefi] Encode the error bit in EFI_STATUS error codes (#235071)
Set the high bit on the EFI_STATUS error macros through new
EFI_ERROR_BIT, EFIERR and EFI_ERROR helpers, and use them
directly in the errno translation table, so that error codes match
the values returned by UEFI firmware while warnings remain
plain values. Add EFI_UNSUPPORTED and
EFI_BUFFER_TOO_SMALL to the table, map unrecognized error
statuses to EIO and unrecognized warnings to success, and
cover the conversions with a unit test.
Include the standard boolean header in the UEFI type definitions that
use bool, so that C translation units prior to C23 can include them.