drivers: improvements to UART driver interface

- removed UNDEFINED value from device enum
- added argument for callbacks
- add power[on|off] functions
- removed tx_end() function in favor of cb return value
board/cpu: adjusted uart driver implementations

for
- sam3x8e
- stm32f0
- stm32f4
- sam3x8e
- nrf51822
tests/periph_uart: added two UART driver tests

- test for UART driver in blocking mode
- test for UART driver in interrupt driven mode
Merge pull request #1481 from haukepetersen/fix_drivers_uartif

drivers: improved UART driver interface