A Unifying Framework for Constrained Sampling-Based Planning