lsm303d: replace old register checking with new check_registers() method

this uses the same method as is now used in the MPU6000 to check that
the sensor retains its correct values
mpu6000: try resetting the mpu6000 up to 5 times

this mirrors the ardupilot driver. We have seen situations where the
mpu6000 on the Pixhawk comes up in SLEEP mode, despite a reset
l3gd20: added register checking

this checks at runtime that key registers have correct values