[checkers] multipath-wide shared context for checkers
At least one checker need to shared data between checkers attached to
all paths of a multipath.
This patch addresses this need by adding a "void * mpcontext" to
struct multipath, and its "void **" sibling in struct checker.
checker_init() ensures the multipath->mpcontext is attached to
*checker->mpcontext.
Checkers are in charge of allocating the memory block and attaching it
to *checker->mpcontext. the .init checker function is a natural
place for that.
Freeing the mpcontext in done in free_multipath().