unix: Fix path seperator used depending on OS

';' is the standard seperator used for paths in environment variables on Windows
Figure out the test_name before using it (significant only to Travis skips)
Turn the Travis CI test skipping mechanism into something more generic
Fix str.modulo when precision is specified.
Merge pull request #668 from dhylands/print-prec

Fix str.modulo when precision is specified.
Merge pull request #667 from Rosuav/testfixes

A couple of small fixes to run-tests
objint: Fix corner case in buffer access.
Bring the C and Python compute_hash functions into consistency
Merge pull request #670 from Rosuav/stringhash

Bring the C and Python compute_hash functions into consistency
Merge pull request #662 from stinos/windows-pathsep

unix: Fix path seperator used depending on OS
- Let the build environment decide about the toolchain to be used, in case
  there are special tweaks and paths to be considered. Just provide some
  defaults, in case the values are undefined.
- py-version.sh does not need any bash specific features.
- Use libdl only on Linux for now. FreeBSD provides dl*() calls from libc.
- FreeBSD provides alloca() via stdlib.h, in contrast to Linux and Windows
- Move the includes for alloca() intp mpconfigport.h
- Cast the struct stat sb.st_ino field to machine_int_t explicitly to avoid a
  cast error in MP_OBJ_NEW_SMALL_INT(). This is necessary for FreeBSD, where
  st_ino is of different size
- If MP_CLOCKS_PER_SEC is defined on the target host, simply define CLOCK_DIV
  as a fraction, regardless of the value of MP_CLOCKS_PER_SEC.
  FreeBSD uses a non-POSIX compliant value of 128 for CLOCKS_PER_SEC
Merge pull request #674 from marcusva/fbsd-patches

Build patches for FreeBSD (as discussed in the former pull request #666)
Merge pull request #672 from marcusva/makefile

toolchain fixes to enable cross compatibility
py, mk: Revert change where build variables set with ?=.

?= operator does not do delayed expansion (unlike =).
py: Merge mp_execute_bytecode into fun_bc_call.

This reduces stack usage by 16 words (64 bytes) for stmhal/ port.

See issue #640.
py: Add generic mp_not_implemented() func to use instead of assert().

Benefits: won't crash baremetal targets, will provide Python source location
when not implemented feature used (it will no longer provide C source
location, but just grep for error message).
modsys: Add optional support for sys.platform.

Ports which wants to have it, should define MICROPY_PY_SYS_PLATFORM to a
string value they need.
py: Implement default keyword only args.

Should finish addressing issue #524.