code: @Override
  	public boolean isEmpty() {
  		for(List<? extends Method<? extends E>> methods : methodsByClass.values()) {
  			for(Method<? extends E> method : methods) {
  				E singleton = method.getSingleton(target);
  				if(singleton!=null) return false;
  				Set<? extends E> set = method.getSet(target);
  				if(set!=null && !set.isEmpty()) return false;
  			}
  		}
  		return true;
  	}
docs: Checks if this set is empty.  This can be an expensive method since it can potentially call all methods.