Hydro improved tim551

We had a requirement to get the intensity data out of the SICK TIM551 laser scanner. The current hydro_catkin branch supports it, but the support is limited. It is fixed at 306 fields. If you change the device name in the SOPAS ET program, the number of fields may change and this renders the driver useless. If you include intensities or change the scanning range, the number of fields will change and also breaks the driver.

The proposed merge fixes this by looking to some essential fields in the package to confirm that it is valid data instead of relying on the total amount of fields.

Also, by including intensities the package size may increase above the maximum MTU which breaks the old approach using select. The proposed merge fixes this by using boost::asio for communications instead of raw socket operations.