Move Ethernet device speed finding to the Network cookbook.

This moves the code we use to detect what speeds an Ethernet device
supports out of ohai and in to the network cookbook.  This prevents
everyone from paying for the additional network round trips that were 
potentially needed to pull in the cstruct gem when we did not need it,
and places the speed detection code with its only user.

The speed detection code now also knows how to detect 2.5g, 20g and 40g
links for the proud owners of such exotic hardware.
should there be a rescue on this to ensure a valid type or do you want it to fail fast?