Remove use of conditionPassedForNonBranchInstr()

This function will always return TRUE on ARMv6-M since it doesn't
support the IT (If-Then) instruction.  I was therefore able to remove
the conditional statements which only allowed instructions to be
executed when the condition passed.  This simplifies the scope nesting
in many of the handlers.
Factor out operand field decoding code

Factored out the operand field decoding code from many of the
instruction handling routines.  This reduced some code duplication.
Refactor pinkysim.c to remote extra code

Another major refacoring of the simulator code to pull out common Rd
and APSR flag bits.