Add s.index and s.rindex transformations
presence_dialoginfo: Fix memory leak in dlginfo_agg_nbody.

This commit fixes a couple of presence issues (introduced in 80c48e6):
 * There was a memory leak in dlginfo_agg_nbody.
 * Bounds checking in dlginfo_agg_nbody was off by 4 (potential stack
   corruption).
 * There were 2 PKG allocs, straight after one another while no alloc
   was needed at all: reduced to 1 optional one.
 * Replace "dumy" with "dummy" in the vicinity.
Output the address of previous fragment when overwritten is detected (just better logging)
Added support for multiple timer processes in TM. The timer process may easyly become a bottleneck in TM because:
	 (a) single lock on the timer lists,
	 (b) single process to purge/free all transactions,
	 (c) single process running all failure routes (with all script complexity of failure routes).
This patch addresses all the above problems allowing multi-locking and multi-processing for the the overall timer concept in TM.
Existing "own_timer_proc" module parameter extended from boolean value to an integer value : 0 - no separate timer proc for TM; 1 - one separate timer proc for TM; n - multiple timer procs for TM.
dialog: replace timeout_avp with $DLG_timeout

* removed the timeout_avp parameter
* added DLG_timeout pseudovariable for specifying dialog timeout
dialog: add $DLG_timeout pvar documentation
rtpproxy: allow unexisting set

Do not exit if a set is not found during startup, since it may be later on
loaded from database.
nathelper: remove unused nathelper.h header
rtpproxy: remove set_rtp_proxy_set() function

The set_rtp_proxy_set() function has been completely remove. From now on, you
can specify the set directly in the rtpproxy comands. If not specified, the
default set is used.
rtpproxy: allow functions to receive optional parameters
rtpproxy: removed the 'rtpp_sock_pvar' parameter

now all functions return the rtpproxy server used in the 4th optional
parameter
rtpproxy: properly parse the bavp set
rtpproxy: properly store/fetch variables by engage
rtpproxy: updated documentation for the setid and pvar changes
rtpproxy: properly unforce dialog when using engage
dialog: only update timer if the timeout is set on current request
tm: prevent timer list overflow when using multiple timer procs
tm: compute the timer set based on the fragments align
When updating the database records, first perform all update and inserts and then check the timeout for expired records -> records to be deleted.
Doing first the delete may hide records "expired but to be updated".
Credits go to Nick Altmann
Closes bug #112.
Merge pull request #174 from wdoekes/wjd-fix_dialogaggr_memleak

presence_dialoginfo: Fix memory leak in dlginfo_agg_nbody.