Set the source prefixes through filters.

Since it's a route attribute, it fits better there.
Format TLV for (standard) requests.
Format TLV for unicast requests.
Format TLV for multihop requests.
Format TLV for unicast multihop requests.
Make send_request_resend deal with source prefixes.
Make handle_request deal with source prefixes.
Parse source-specific request.
Parse source-specific multihop request.
Add some missing spaces, killed by script.
Add some missing spaces, killed by script.
Implement source-specific requests.
Don't allow source-specific wildcard requests.
Add API function to research some routes, or approximations.
Limit find_min_iroute function to used cases.
Fix kinky formatting of prefix comparisons.
Export metric_to_kernel().
Add disambiguation algorithm.
Use the disambiguation algorithm.
kernel_netlink: take IPV6_SUBTREES into account.

The linux kernel should be able to deal correctly with source-sensitive ipv6
route entries since 3.11 (when it is configured with IPV6_SUBTREES).  This patch
modify the kernel so that ipv6 route entries sent into the kernel are not pushed
in a different routing table.

The behavior for v4 doesn't change.