avoid non-standard predefined macros
Use __riscv_flen macro to detect FP support
Refactor pk, bbl, machine into separate libraries Yuck.