code: public SmartBinder cast(Signature target) {
          return new SmartBinder(target, binder.cast(target.type()));
      }
docs: Cast the incoming arguments to the types in the given signature. The
  argument count must match, but the names in the target signature are
  ignored.
  
  @param target the Signature to which arguments should be cast
  @return a new SmartBinder with the cast applied