I have used epoxy (it is not hard to remove if you change your mind), drilling (I found this to be difficult, some rock was very dense and hard to get through and other pieces would suddenly fall apart), rods (through holes I drilled) and zip ties (usually through natural holes). For the most part I stack the rock and then use epoxy to help stabilize the set up, sometimes if I cannot keep the rock where I want it I will use other rocks or acrylic rods to hold it in place until the epoxy sets. The key I have found to the epoxy is to not rely on it to glue the rock together, rather join the rock by squeezing it around bumps or into holes on both pieces so that once it hardens it keeps them together, the epoxy will release from the rock rather easily so it is not like just glueing rocks together (hope this makes sense).
On my current project I am going to try the black pond foam, I used it on my koi pond and waterfall and found it easy to work with.