UC-1155 SIP services crash on Mongo exceptions
http://track.sipfoundry.org/browse/UC-1155

- implemented an exception handling class 'OsExceptionHandler'
- exception handling methods can be registered in 3 different
exceptions containers
- a container is a map which stores entries like <string exceptionName, exceptionHandler>
- there are 3 containers which store entries for 3 types of exceptions
- the form of registered exception methods should be
    - std - void stdException(std::exception& e)
    - boost - void boostException(boost::exception& e)
    - mongo - void mongoException(mongo::DBException& e)

- The default behavior for an exception is to log and after that abort
- There are 2 subtypes of mongo exceptions which are treated different:
  SocketException and ConnectException; for this type of exceptions the default
  behavior is to log and exit
- Replaced the function passed to set_terminate(catch_global) which treats exceptions from sipXproxy, sipregistrar,
sipXrls, sipXsaa with static class function 'catch_global' from within the 'OsExceptionHandler'(which caches the
exceptions and calls the specific exceptions handling method stored in one of the containers)

- added Unit tests