code: public static <U, V> Converter<V, U> wrapWithCast(
        Converter<Object, U> converter, Class<V> type) {
      Converter<V, Object> castConverter = new CastingConverter<V>(type).inverse();
      return castConverter.compose(converter);
    }
docs: Wraps {@code converter} such that its inputVar is of type {@code V}. The
  result of invert on the returned converter is also cast to {@code V} before
  being returned.
  
  @param converter
  @param classToCast
  @return