Pin api

The new api is added to both STM32 and AVR.

You can run a test for AVR in `test/pin_api`
For STM32, you can try `test/stm32`

But there is al last question before merging. I kept the old API, for backward compatibility.
Do I try to remove every use of the old API before merging ?