#shlo_ref Use _Float16 for F16 with GCC
#shlo_ref Use _Float16 for F16 with GCC

The GCC OSS build was failing to use `_Float16` for the `shlo_ref::F16` type alias despite `_Float16`'s availability with GCC. This was because the `has_keyword` macro was always returning false on GCC, as it was implemented using `__is_identifier`, which is Clang only. _Float16 should be available on both GCC & Clang, so we should just use those unless std::float16_t is available.

This also removes has_keyword.h, as it is no longer used and ensures that `BF16` and `F16` map to `std::bfloat16_t` and `std::float16_t` when those are available.
