I would recommend writing the code so it's designed well for what it does now and flexible enough to extend. 

As it is, the followers themselves are initialized at startup and already having namespace conflicts (e.g. the zero integrals).  Chances are most of the logic related to a dubins cart should and will end up in the libraries code anyway.  Your plane follower that takes care of taxing versus flying is going to have enough logic dealing with that distinction you'll have the calls to the dubins cart in totally separate blocks of code anyway.

Basically writing this way is premature IMO and worse design since the way it's templated is essentially making the module just pretend to be one of three by scattering switches everywhere.