PT42039311 - Modify SipSubscriptionClient class to use boost::shared_ptr and standard containers to get rid of locks.

All containers from this class were migrated to std::vector and std::map. The pointers stored in this containser were wrapped
in a boost::shared_ptr which ensure safe deletion. Locks from this class were reorganized. Fewer locks are needed now because
of shared_ptr: 1. lock access to the containers; 2. lock a stored pointer while it is retrieved from container and used.
Overall class speed improved because locks are now only per stored pointer and not per class method (as they were before).

A wrapper class was implemented to lock a pointer after it was retrieved from container and ensure that only one thread is using it.
The wrapper is non-copyable (because of the inner locks) so it is enveloped in a std::auto_ptr for easy passing of the wrapper object.

Some functions were refactored.
Added a missing header in the unit test to make test compile.
PT42039427 - Add a utility class in portlib to maintain a queue of timers
PT42039373 - Redesign of SAA subscription termination to phones
PT42039401 - Redesign of RLS subscription termination to phones

First check-in for new class implementing a priority queue of one-shot timers.
The timers are stored ordered by the expiration time starting from the smallest
expiration to the largest.
Unit tests are implemented covering the whole functionality.

SAA
Redesigned sipXsaa dialog;sla event subscriptions re-initiation to make use of the timer queue.
Timers replace the sleep delay which was used before between subscription termination and
re-initiation. The delay was causing SAA to deadlock.

RLS
Redesigned sipXrls dialog event subscriptions re-initiation to make use of the timer queue.
Timers replace the sleep delay which was used before between subscription termination and
re-initiation. The delay was causing RLS to deadlock.
Merge remote-tracking branch 'origin/release-4.6-update-2' into release-4.6-update-2