Refactored AlreadyVisitedMethod to AlreadyVisited<T,K>
Refactored AlreadyVisited to AlreadyVisited<HeapObject, HeapObject>
Refactored AlreadyVisitedIfBranch to AlreadyVisited<InstructionHandle,
Boolean>