Added general purpose registers individuall to allow them to update as general purpose registers are updated.
Added overloaded constructor to allow general purpose register references to be passed into event, so that the right text field on the gui can be updated.
Added event listener to handle updates to registers. Every time a register is written to, the event listener handles the event and passes it to the GUI code. Also added registerListener() method to register a listener with the class.