mptcp: MPC flag optimization

Changed most of the verification of the mpc flag with a function pointer
optimization. Where possible, code pieces like 'if (mpc) {...code1...} else
{...code2...}' were replaced with the call of a single function that was placed
in tcp_sock. This function pointer changes with the value of the mpc flag: when
the flag is set to 0, then the functions are set to their TCP correspondent;
when the flag is set to 1, the pointers are set to the MPTCP correspondent. This
trick helps us by avoiding the branchy code introduced by the verification of
the mpc flag. As far as locking is concerned, we must make sure that whenever
setting or calling these functions, the sock lock must be held.

Signed-off-by: Cristina Ciocan <cristina.ciocan@intel.com>
Signed-off-by: Christoph Paasch <christoph.paasch@uclouvain.be>