Improved internal exception handling of core

- Allow more than one exception to result in a SCEngineGotException
  notification
- Internally make a distinction between fatal and non-fatal exceptions
- Deal with non-fatal exceptions gracefully, particularly in Invitation
  class
- Added internal system to call cleanup functions after
  pjsip_endpt_handle_events() returns

darcs-hash:20090219144628-58103-e08ae393e6c122993d81fccbcf80f5a49c8a73c3
Updated Engine internal processing and added a few common notifications

Added notifications:
- SCEngineWillStart
- SCEngineDidStart
- SCEngineWillEnd
- SCEngineDidFail
- SCEngineDidEnd

darcs-hash:20090219162213-58103-7be5a14f2cdfef7694d83797fc1d318fb6b0e32b