rtnl: introduce RtnlSocket

RtnlSocket is a proxy, that handles messages of certain types and
bypass all other messages to a NetlinkSocket.

It is planned to be used as a compatibility layer hook.

Bug-Url: https://github.com/svinota/pyroute2/issues/50
Bug-Url: https://github.com/svinota/pyroute2/issues/51
rtnl: port compatibility layer to the rtnl level

Bug-Url: https://github.com/svinota/pyroute2/issues/50
Bug-Url: https://github.com/svinota/pyroute2/issues/51
ipdb: drop compat routines support from IPDB
compat: avoid buffer tails by re-encoding all messages
generic: raw cdata messages (support pyrouted)
ipdb: fix family for IPv6 route requests

Bug-Url: https://github.com/svinota/pyroute2/issues/64
ipdb: support snapshots

Bug-Url: https://github.com/svinota/pyroute2/issues/63