Add basic 'emacs style' key bindings.

Could do with being smarter to properly handle C-w and add C-k but this is a good start.
Allow the CCPREFIX to be overridden by the command line.
Fix building on OSX (both cross and normal)
- Building natively on OSX is no different to Linux.
- When building embedded specify -nostartfiles and then add the bare libraries required.
Fix cut & paste error (don't link to libm as there is a custom one)
Allow the user to specify the color order.
Add HSV color routines.
Merge pull request #417 from DanielO/master

Emacs bindings, misc build fixes
revert the build changes from https://github.com/espruino/Espruino/pull/417
            Fix regression in long timeouts (fix #416)
            Use 'interval' var to specify if we're an interval or not (don't use 'recur' var)
Stop while/for/etc resetting exception state (fix #419)
            Add  E.getSizeOf (fix #421)
            Fix jsvCountJsVarsUsed for names with values