A tip I can give you for using boids, is to use the boids behaviour on a "ghost object" - and then get it's coordinate data, or whatever else you need from it, and apply that to your actual object.
In my current protoytpe, I have made a group of "dudes" follow the main player "dude". I have some ghost boid objects that flock with the player constantly, and use pathfinding to reach the desired boid location. Each "dude" has his own instance of a boid "node" that is always following the player. In this way, I get the flocked-style "formation" while using path finding, while avoiding having everything pile up in a pixel perfect mountain of identical sprites.... BUT still have the ability to navigate intelligently.
I have found boids a little... constraining to work with. I have also had some issues implementing rex's boids behaviour as well... but in the end I found the original one a little more straight forward to use, and by using "ghosts" I was able to do exactly what I wanted while maintaining direct control over my actual sprite "dudes".
~Sol