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
drivers: Provide basic interface for all network devices
drivers: Make general IEEE 802.15.4 driver part of net_dev
nativenet: Apply coding conventions
nativenet: Supply net_dev_t support for nativenet
net_dev: Provide some default values dependent on module selection
unittests: add test network device

The thinking behind this commit is twofold:
1. test the "lower" part (the device part) of net_dev
2. provide a well defined testing infrastructure for modules that utilise
   net_dev
The actual tests are provided in the following commit
unittests: Provide unittests for net_dev_dummy

* tests if net_dev_dummy is correct and if driver part of net_dev is
  correct
[WIP] tests: Add functionality test for net_dev_base