problem_description: Using std::deque<> instead of std::vector<> for quantities.

Otherwise, this leads to funny problems when returning references after add_quantity():
 QuantityType & quan1 = problem_desc.add_quantity("u");
 QuantityType & quan2 = problem_desc.add_quantity("v");
With std::vector, quan1 is an invalid reference after quan2 is created.