drop indirect call logic

The only remaining manufacturer-specific code is related to specific
nortel harware, and none of our currently available samples demonstrate
any usefulness
drop code unused anymore
merge Tools::Hardware and Tools::Hardware::Generic

No need to use two different namespaces now.
turn into private functions

Those functions are now only used locally.
add additional hardware types
update expected result