add functionality to LHCb::LinksByKey (link, typed constructor), make
it impossible to change sourceID, targetID, ordering after
construction (as that would leave any already present data in a bad
shape)
drop the no longer relevant OutputLinks class
drop the unused AllLinks header
drop the no longer relevant LinkedFromKey class
strip down the LinkerWithKey class to a single static create function for easy migration
move LinkerEntry and LinkerRange into LinkerTable as they are implementation details of iterating over the table
add warning counter which keeps track of how often Object2MCLinker invokes an algorithm to build a linker table
unify 'range' function names, make the inverse range in Object2MCLinker lazy
reduce code in LinkerTool using the new functionality in LinksByKey
reduce code in LinkerWithKey using the new functionality in LinksByKey