Moved Arg class out of AbstractBuilder because of com.google.gwt.user.client.rpc.IsSerializable error.