Fix sdcard_power_on to not do anything if the card is already powered on.
py: Add dispatch for user defined ==, >, <=, >=.

Addresses issue #827.
stmhal: Fix build issues with (old) CC3000 driver.

Addresses issue #825.
stmhal: Hookup USB_VCP.any().

Thanks to Dave Hylands for this patch.
Add pip-micropython to unix make install.

Also add -t/--target option to pip-micropython to allowing installing to
the pyboard.

Thanks to turbinenreiter/Sebastian Plamauer for the patch.
Added LIS302DL ID check
stmhal, staccel.py: Style cleanup.
Merge branch 'siorpaes-master'
stmhal, STM32F4DISC: Small changes to ST accel driver.
Merge pull request #824 from dhylands/sdcard-power

Fix sdcard_power_on to not do anything if the card is already powered on...
py: Fix line number printing for file with 1 line.

With a file with 1 line (and an error on that line), used to show the
line as number 0.  Now shows it correctly as line number 1.

But, when line numbers are disabled, it now prints line number 1 for any
line that has an error (instead of 0 as previously).  This might end up
being confusing, but requires extra RAM and/or hack logic to make it
print something special in the case of no line numbers.
pip-micropython: Revert to using PIP_MICROPY_DEST environment var.

-t/--target is a pip option. Trying to use pip options for different meanings
in pip-micropython may lead to big confusion. That's why the original passed
any extra parameters using environment variables. "All options belong to pip."
Make int(b'123') work properly.
Merge branch 'int-bytes' of https://github.com/dhylands/micropython into dhylands-int-bytes
py: Improve efficiency of MP_OBJ_IS_STR_OR_BYTES.

Saves ROM (16 on stmhal, 240 on 64-bit unix) and should be quicker since
there is 1 less branch.
Merge branch 'dhylands-int-bytes'
Basic native ARM emitter
Clarify copyright on asmarm files
py: Reduce fragmentation of GC heap.

Recent speed up of GC allocation made the GC have a fragmented heap.
This patch restores "original fragmentation behaviour" whilst still
retaining relatively fast allocation.  This patch works because there is
always going to be a single block allocated now and then, which advances
the gc_last_free_atb_index pointer often enough so that the whole heap
doesn't need scanning.

Should address issue #836.
py, gc: Further reduce heap fragmentation with new, faster gc alloc.

The heap allocation is now exactly as it was before the "faster gc
alloc" patch, but it's still nearly as fast.  It is fixed by being
careful to always update the "last free block" pointer whenever the heap
changes (eg free or realloc).

Tested on all tests by enabling EXTENSIVE_HEAP_PROFILING in py/gc.c:
old and new allocator have exactly the same behaviour, just the new one
is much faster.