Adds utility method to add name value pair for uri builder (#288)

diff --git a/httpcore5/src/main/java/org/apache/hc/core5/net/URIBuilder.java b/httpcore5/src/main/java/org/apache/hc/core5/net/URIBuilder.java
index 894db16..0621db1 100644
--- a/httpcore5/src/main/java/org/apache/hc/core5/net/URIBuilder.java
+++ b/httpcore5/src/main/java/org/apache/hc/core5/net/URIBuilder.java
@@ -685,10 +685,25 @@
      * @return this.
      */
     public URIBuilder addParameter(final String param, final String value) {
+        return addParameter(new BasicNameValuePair(param, value));
+    }
+
+    /**
+     * Adds parameter to URI query. The parameter name and value are expected to be unescaped
+     * and may contain non ASCII characters.
+     * <p>
+     * Please note query parameters and custom query component are mutually exclusive. This method
+     * will remove custom query if present.
+     * </p>
+     *
+     * @return this.
+     * @since 5.2
+     */
+    public URIBuilder addParameter(final NameValuePair nvp) {
         if (this.queryParams == null) {
             this.queryParams = new ArrayList<>();
         }
-        this.queryParams.add(new BasicNameValuePair(param, value));
+        this.queryParams.add(nvp);
         this.encodedQuery = null;
         this.encodedSchemeSpecificPart = null;
         this.query = null;