leds: Fix the API

The leds API did not work in some cases. E.g. with the following sequence:
  leds_off(LEDS_ALL);
  leds_toggle(LEDS_GREEN);
  leds_off(LEDS_ALL);
the green LED was remaining on after the last call.

This was caused by the toggle feature made synonymous with the invert feature,
although it is unrelated. leds_toggle() is indeed supposed to toggle an LED,
while leds_invert() is supposed to change the active level of an LED. However,
all users of leds_invert() actually meant leds_toggle(), and the invert feature
does not make sense in this module because it is not handy due to successive
calls to leds_invert() changing the intended behavior, and hardware active
levels should be managed in leds_arch_set() (e.g. by XORing the passed value
with a hardware-specific constant before setting the output levels of the pins).

Consequently, this change:
 - removes the leds_invert() function,
 - makes leds_toggle() behave as expected relatively to leds_off() / leds_on(),
 - sanitizes the code in the leds module.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
leds: Add the leds_set() function

The leds_set() function is added on top of leds_arch_set() in order to have a
means of displaying a pattern on a set of LEDs, while keeping the ENERGEST
information up to date, which would be missing with a direct call to
leds_arch_set().

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Redefine assert if already defined since some platforms already have an assert definition
Use platform configuration for CC2420/CC2520 SFD on MSP430 based platforms
Fixed typo to correctly print the radio channel at startup
CONTIKI_PROJECT is sometimes set to multiple files which caused distclean to fail.
Added method to framer that returns the header length if the framer
would create a header with the current packet information.

This allows sicslowpan to calculate the max payload size without
consuming a sequence number or clearing/restoring the packet buffer.
Changed to use LINKADDR_SIZE instead of sizeof() to select between
short address and long address as some platforms might use padding in
the struct. This fixes #555.
Set default link ETX to 2
Improve travis RL78 tests

* No longer apt-get install a bunch of packages which are not really needed
* Only install gnurl78 if its download succeeded
Fix incorrect IEEE address byte re-ordering
Make the CC2538 secondary IEEE address location configurable
Improve code style
Improve documentation for the CC2538 IEEE address re-ordering
Build static Ethernet drivers directly from source.
Build static Ethernet drivers directly from source.
Merge pull request #706 from oliverschmidt/master

Build static Ethernet drivers directly from source.
Merge pull request #694 from g-oikonomou/fix-surplus-travis

Improve travis RL78 tests
Merge pull request #702 from g-oikonomou/ieee-addr-fixes

Fix incorrect IEEE address byte re-ordering
Do not copy more bytes than the filename string contains.