code: public <T> T contextRem(Class<T> key)
  	{
  		synchronized (TypeCheckInfo.class)
  		{
  			Stack<T> contextStack = lookupListForType(key);
  			if (contextStack != null)
  			{
  				return contextStack.pop();
  			}
  		}
  		return null;
  	}
docs: Returns the value associated with key, and removes that binding from the context.
  
  @param <T>
  @param key
  @return value