Added guards for functions

Added the put-guard-same-closure and put-guard-same-native instructions which check whether the function that will be executed inline in the trace is the same as the function that was originally recorded in the trace.