Facility Location and related Problems: Extensions, Applications, Algorithms and Complexity Issues