Port of the firmata source from GPIO
Adding the experimental firmata target