code: function _fnEventRemoveTemplate( sKey )
  	{
  		/*
  		 * Function: -
  		 * Purpose:  API function for removing event from cache
  		 * Returns:  int: - number of events removed
  		 * Inputs:   1. node:x - target node to remove event from
  		 *           2. function:y - callback function to apply
  		 *         or
  		 *           1. int:x - x coord. of target cell (can be null for live events)
  		 *           2. int:y - y coord. of target cell (can be null for live events)
  		 *           3. function:z - callback function to remove - optional
  		 * Notes:    This function is (interally) overloaded (in as much as javascript allows for
  		 *           that) - the target cell can be given by either node or coords and the function
  		 *           to remove is optional
  		 */
  		return function ( x, y, z ) {
  			if ( (x===null || typeof arguments[0] == "number") &&
  				 (y===null || typeof arguments[1] == "number" ) )
  			{
  				if ( typeof arguments[2] == "function" )
  				{
  					_fnEventRemove( sKey, x, y, z );
  				}
  				else
  				{
  					_fnEventRemove( sKey, x, y );
  				}
  			}
  			else if ( typeof arguments[0] == "object" )
  			{
  				var aCoords = _fnCoordsFromCell( x );
  				if ( typeof arguments[1] == "function" )
  				{
  					_fnEventRemove( sKey, aCoords[0], aCoords[1], y );
  				}
  				else
  				{
  					_fnEventRemove( sKey, aCoords[0], aCoords[1] );
  				}
  			}
  			else
  			{
  				alert( "Unhandable event type was removed: x" +x+ "  y:" +y+ "  z:" +z );
  			}
  		};
  	}
docs: /*
  Function: _fnEventRemoveTemplate
  Purpose:  Create a function (with closure for sKey) event removal API
  Returns:  function: - template function
  Inputs:   string:sKey - type of event to detect