added visitGetSelf method to find reference to accessed field

added logic in the addPut, addGet, addStaticPut, and addStaticGet methods
that places a reference to the field accessed on the stack

Conflicts:

	classes/rr/instrument/classes/GuardStateInserter.class

added logic in visitGetSelf to move null onto the stack if the field accessed is not an object type

Conflicts:

	classes/rr/instrument/classes/GuardStateInserter.class
shifted fadid, and shadowthread  argument down one position in the stack

Conflicts:

	classes/rr/instrument/classes/GuardStateInserter.class

added code to pop the reference to the enclosing class from the stack if the
accessed field isn't an object reference
shifted fadid and shadowthread arguments to original positions on stack

Conflicts:

	classes/rr/instrument/classes/GuardStateInserter.class

only pop enclosing reference for non-static fields
static fields do not have an enclosing reference on the stack

Conflicts:

	src/rr/instrument/classes/GuardStateInserter.java
puts reference to accessed field if it is an array type

Conflicts:

	classes/rr/instrument/classes/GuardStateInserter.class
changed method access method declarations
(doesn't apply for multi-loader or values option)

Conflicts:

	classes/rr/instrument/Constants.class

added new Object argument type to array access method declarations

Conflicts:

	classes/rr/instrument/Constants.class
added logic to pass along the accessed field to the FieldAccessEvents

Conflicts:

	classes/rr/tool/RREventGenerator$1.class
	classes/rr/tool/RREventGenerator$2.class
	classes/rr/tool/RREventGenerator$3$1.class
	classes/rr/tool/RREventGenerator$3.class
	classes/rr/tool/RREventGenerator.class

added new Object argument to the ACCESS_ML methods
this argument is meant to be the reference accessed

Conflicts:

	classes/rr/tool/RREventGenerator.class

passed accessed reference in array to the read/writeArray methods and the prepArrayAccessEvent method

Conflicts:

	classes/rr/tool/RREventGenerator$3$1.class
	classes/rr/tool/RREventGenerator$3.class
	classes/rr/tool/RREventGenerator.class
added logic to add the accessed reference on to the stack before calling the read/write array method

Conflicts:

	classes/rr/instrument/methods/SimpleArrayInstructionAdapter.class

send visitInsn(ALOAD) call to  MethodVisitor instead of ThreadDataInstructionAdapter
prevents infinite loop when visitInsn(ALOAD) is called

Conflicts:

	classes/rr/instrument/methods/SimpleArrayInstructionAdapter.class

change index at which to store accessed reference from
context.getNextFreeVar to threadDataLoc + 1
pop the index and target from the stack if the accessed index is not a reference

Conflicts:

	classes/rr/instrument/methods/SimpleArrayInstructionAdapter.class

changed context.getNextFreeVar to threadDataLoc + 1 in all cases

pop additional index and target variables from stack
if accessed array element is not a reference
delete unused code
push references to the accessed array index on to the stack
same as in SimpleArrayInstructionAdapter
Conflicts:

	classes/rr/instrument/methods/FancyArrayInstructionAdapter.class
added accessed field and get and set methods for accessed field

Conflicts:

	classes/rr/event/AccessEvent$Kind.class
	classes/rr/event/AccessEvent.class
put null arguments where needed for class to compile
all accessedFields arguments are null. this was just for compilation.
refactored code to put accessed reference on the stack
now done by a call to putAccessed(opcode)
don't put reference to accessed field on stack if values option is on
add stack diagram comments