/**
     *  Create a new player
     */
    public bool CreateNewPlayer(FeedData feedData)
    {
        // make sure the player doesn't already exist
        if (playerDict.ContainsKey(feedData.username))
        {
            return(false);
        }

        // get a position that doesn't contain any other colliders
        Vector3 spawnPosition = GetClearSpawnPosition();

        // get the spawn rotation
        Quaternion spawnRotation = new Quaternion();

        // random rotation - on local x only
        //spawnRotation.eulerAngles = new Vector3 (Random.Range (0.0f, 360.0f), 90f, 0f);
        // no random rotation
        spawnRotation.eulerAngles = new Vector3(0f, 0f, 0f);

        // if clear spawn position
        if (spawnPosition != Vector3.zero)
        {
            // instantiate prefab @ spawn position
            GameObject obj = (GameObject)Instantiate(playerPrefab, spawnPosition, spawnRotation);
            // call Init() on Player
            obj.GetComponent <Player> ().Init(feedData);
            // set name in Unity Editor
            obj.name = feedData.username;
            // parent under PlayerManger
            obj.transform.parent = gameObject.transform;
            // finaly, add to dict
            playerDict.Add(feedData.username, obj);
            // sets a reference to the cameraManager
            obj.GetComponent <Player> ().cameraManager = cameraManager;

            // Allow the player to be selected by the camera
            cameraManager.AddPlayer(feedData.username);
        }
        return(true);
    }