LR_02_041: Improve error detection and error reporting on the Go riscv64 assembler

LR_02_041: Improve error detection and error reporting on the Go riscv64 assembler

About

Error reporting and detection in the Go riscv64 assembler could do with some improvement.  The assembler will often report the same error multiple times and frequently fails to reject invalid instructions.  It will generate valid encodings for those instructions but it's not always clear what those encodings will be.  For example, ADDI X10,X10,X11 will generate ADDI $0, X10, X11 rather than return an error.