Adding a `Float32` datatype is necessary, since python makes no guarantees to the bitwidth of `float` (it's often a double) Also adding the `RV32F` extension with most operations implemented, and support for floating point registers.