,
        [ [10], ["bean"] , [["bags"]] ],
        "[''] uses value as [key]");

    keypath(['x', 'y'],
        [ {x:10, y:20}, {y:1.337, x:100} ],
        [ [10, 20], [100, 1.337] ],
        "['x', 'y']");

    keypath([['x'], ['y']],
        [ {x:10, y:20}, {y:1.337, x:100} ],
        [ [10, 20], [100, 1.337] ],
        "[['x'], 'y'] (stringifies)");

    keypath(['x', {toString:function(){return 'y'}}],
        [ {x:10, y:20}, {y:1.337, x:100} ],
        [ [10, 20], [100, 1.337] ],
        "['x', {toStr