o Modified Registers.String() to return a string instead of printing
  one.

o Use 'U' as the symbol for the unused status bit in register P.

o Added DisableDecimalMode to CPUer interface for turning off decimal
  mode.

o Added Nop and NopAddress (the later is for unoffical NOP opcodes) to
  CPUer interface

o Refactored decode output.  A decode struct is now stored in the M6502
  struct, the struct contains PC, opcode, arguments, mneumonic, decoded
  arguments and register state to be printed for each instruction.
  These get calculated as an instruction executes and then printed at
  the end of Execute().

o Moved M6502.load closer to LD_ opcodes.

o Fixed bug in indexedIndirectAddress and indirectIndexedAddress where
  the address of the high byte was not masked off to 8-bits before
  fetching.

o Fixed bug in TXS instruction, was modifying status register P but
  instruction should not affect P.

o Modified PHP instruction to set bits B and U (the Unused 5th bit) in
  the value of register P that's pushed to the stack.

o Modified PLP instruction to unset bit B and set bit U before assigning
  the stack value to register P.

o Fixed bug in BIT instruction, was not setting N and V bits of register
  P correctly.

o Added support for all unofficial NOP instructions.

o Modified RTI instruction to set U bit before assigning the stack value
  to register P.

o Added Mneumonic string to Instruction type containing an instruction's
  name i.e. "LDA".

o Modified TestPlp / TestRti to expect the U bit to be set.

o Modified BasicMemory.load to load bytes starting at address 0xc000.