proposed change of gpio_api

Currently the gpio_init function is configuring a gpio either to pull low or to output low. This can be a problem if you need to respect timing of a pin or only set the pin low only when it should be. An example could be initializing multiple chip selects on an SPI bus. There is no way to init a pin as "input pull none" or "output high" or "input pull high". Therefore I am proposing a change to the gpio api.

The function gpio_init should only create the gpio object and not apply any changes to the hardware.

Unfortunately this change affects all targets. And I am not able to test them.