Have all the primary function calls in the assemble function; much cleaner anyways
InstructionOpcode -> BasicOpcode, SpecialOpcode will be added in due course