A branch and price algorithm for the multi-period single-sourcing problem