// PRIVATE /////////////////////////
        private static void authentication_call(string Username, string Password, string Token, string eventName)
        {
            _PMClient.Authentication authObject = new _PMClient.Authentication ();
            authObject.ClientName = Username;
            authObject.ClientPassword = Password;
            authObject.ClientToken = Token;
            authObject.ClientAuthenticated = false;

            PurpleNetwork.ToServer (eventName, authObject);
        }
        private static void authentication_call(ClientConfig config, string eventName)
        {
            _PMClient.Authentication authObject = new _PMClient.Authentication ();
            authObject.ClientName = config.ClientName;
            authObject.ClientPassword = config.ClientPassword;
            authObject.ClientToken = config.ClientToken;
            authObject.ClientAuthenticated = false;

            PurpleNetwork.ToServer (eventName, authObject);
        }
        public static void AuthenticateSwitch(ClientConfig config)
        {
            _PMClient.Authentication authObject = new _PMClient.Authentication ();
            authObject.ClientName = config.ClientName;
            authObject.ClientToken = config.ClientToken;
            authObject.ServerSwitchToken = config.ServerSwitchToken;
            authObject.ClientAuthenticated = false;

            PurpleNetwork.ToServer ("client_authenticate_switch", authObject);		// TODO: function calls - Server side
        }