what is the most effective way to grout between ROUGH, SMALL stones? (picture)
I would use a grout bag:



Your technique will be similar to that used when "tuck pointing" brick (look it up). Because your grout lines appear to be too narrow, instead of a brick mortar jointer (see pic below) I would customize a finishing tool or maybe use a narrow grout float.

 

You will definitely need sanded grout (make sure the joint width and depth does not exceed that recommended by the grout manufacturer), or maybe even a coarser aggregate mortar (check with a decorative stone supplier or good tile shop in your area).
Use several sponge buckets (dirty, clean, cleaner) and wring often when sponging, changing water frequently.

Do not fear a mild acid wash to remove residual grout haze, muriatic is what we generally use on stone and brick (test on a leftover stone sample prior to using to ensure no dramatic reaction/discoloration).

My Sequence:

1) Do the whole top section first, including finish sponging. If you must stop, at least finish a wall and stop at a corner.

2) Do the whole stone section second, including finish sponging. If you must stop, at least finish a wall and stop at a corner.

3) Do the whole bottom section last, including finish sponging. If you must stop, at least finish a wall and stop at a corner.

4) Wash and/or acid wash haze in one operation after the grout has set (refer to grout maker's recommendation for appropriate time prior to washing).

I dig your design, it is going to be beautiful.

P.S.- You're gonna need a lot of grout.