mmem: Prevent duplicate init of mmem

This could seriously corrupt data if mmem_init was called again after
someone called mmem_alloc.
Enabled 2nd button on platform econotag
core/net/uip.h: Add missing #include <string.h>

Fixes implicit definition of memcmp() warnings/errors.

Signed-off-by: Joakim Gebart <joakim.gebart@eistec.se>
Changed the parameter 'char * data' of process_start to the
type process_data_t. This was an artifact when the choice was
made to use the void * type for the data parameter in processes.

Changed parameter 'void * data' of process_post_synch to
process_data_t for consistency.

Checked all the uses of process_start() in contiki and fixed casts
of the data parameter.
Update README.md

Adding new command for ftdi_sio which applies to Kernel>3.12 used by Ubuntu 14.04 LTS
rl78: Change RIMEADDR_CONF_SIZE to LINKADDR_CONF_SIZE because the rimeaddr module has been renamed to linkaddr.
Merge pull request #734 from hexluthor/rl78-linkaddr

rl78: Change RIMEADDR_CONF_SIZE to LINKADDR_CONF_SIZE
Removing trailing whitespaces
Fix time accounting on msp430 Series 1 and Series 2 MCU based platforms.

The problem with the current version of the code was that the condition at the end of the do...while loop at Timer A1 interrupt:
 while((TACCR1 - TAR) > INTERVAL);
evaluates to false whenever TACCR1 == TAR.
Not incrementing TACCR1 in this case leads to Timer A1 interrupt not being called for 2 seconds, until TAR counter reaches TACCR1 again after an overflow.

The patch avoids this problem by changing the condition of the loop, and using CLOCK_LT macro to compare between time values.

The patch also attempts to fix another problem: a read of TAR register while it is being updated may return a lower value than the actual contents. To avoid that, the "read twice and compare results" idiom should be used. As the TAR register is updated by the actual hardware, it is of no importance whether it is read with interrupts disabled or enabled; the problem can occur in both contexts.
Merge pull request #711 from gebart/upstream-fix-implicit-definitions

uip.h missing #include <string.h>
Add PLATFORM_HAS_RADIO in Sky Platform

In order to use the er-server-example Radio resource it is required that the platform defines that it has a radio. This line might be required in other platforms.
Adding a CONTRIBUTING file to use github feature

https://github.com/blog/1184-contributing-guidelines
Merges Z1SP into Z1 platform
Only wait for a keypress if the user is told to press a key.
Merge pull request #747 from oliverschmidt/master

Only wait for a keypress if the user is told to press a key.
Merge pull request #739 from alignan/merge_z1sp_with_z1

Merges Z1SP into Z1 platform
Clean up script commands in .travis.yml.

Besides general whitespace and quoting cleanup, commands that test
variables were changed from:
  [ $B = a ] && command || true
to
  if [ $B = a ] ; then command ; fi
This form correctly returns the exit code of "command".
Add retries to commands that download from external servers.

This helps reduce the chance of a build failure due to transient
download error.  This also switches to consistent use of wget
throughout, which reports download errors more cleanly in the travis
build logs.
Rename travis "arm" BUILD_ARCH to "arm-apcs".

These platforms are built with an old ARM compiler that supports the
deprecated APCS standard.
Increase fixed filename sizes in SLIP tunnels

Long serial port names like
  /dev/serial/by-id/usb-FTDI_FT230X_Basic_UART_DN0038W8-if00-port0
cause crashes.  This is the simplest fix to avoid the problem.