core: introducing OpenSIPS contexts

A context is simply a data buffer. It can also be seen as a key-value
database, where different pieces of code register certain keys, in order
to maintain their values within each newly created context.

Contexts may be attached to any structure. The primitives defined in
"context.h" represent a generic way of registering/storing/fetching
data.
core: export sip_msg context operations

All sip_msg structures may now hold additional data within a context.
tm: export transaction context operations

All transactions may now hold additional context-specific data.
Data can be stored/fetched using the newly added functions in tm_binds.