NESHLA: The High Level 6502 Assembler for the Nintendo Entertainment System