Committing interface and basic instruction implementation
Adding interface for instruction decoders and decoder factory
adding OperandMemoryAddress.java to deal with the operand of memory address type