/// <summary>
        /// Logout from the RevoDeployR server.
        /// </summary>
        /// <param name="user">The RUser object representing the user to logout</param>
        /// <remarks></remarks>
        public void logout(RUser user)
        {
            StringBuilder data = new StringBuilder();

            String uri = Constants.RUSERLOGOUT;

            //create the input String
            data.Append(Constants.FORMAT_JSON);
            //call the server
            RClient      client    = this;
            JSONResponse jresponse = HTTPUtilities.callRESTPost(uri, data.ToString(), ref client);
        }
        /// <summary>
        /// Authenticate with the RevoDeployR server
        /// </summary>
        /// <param name="authentication">A valid RAuthentication object</param>
        /// <param name="autosave">(optional) Flag indicating that autosave should be turned on/off for the user</param>
        /// <returns>RResponse object</returns>
        /// <remarks></remarks>
        public RUser login(RAuthentication authentication, Boolean autosave)
        {
            StringBuilder data = new StringBuilder();

            String uri = Constants.RUSERLOGIN;

            //create the input String
            data.Append(Constants.FORMAT_JSON + "&username="******"&password="******"&save=" + HttpUtility.UrlEncode(autosave.ToString()));
            //call the server
            RClient      client      = this;
            JSONResponse jresponse   = HTTPUtilities.callRESTPost(uri, data.ToString(), ref client);
            RUser        returnValue = new RUser(jresponse, this);

            return(returnValue);
        }