Basic native ARM emitter

Resolves issue #800.
It closely resembles the thumb2 emitter, due to the similiarities and is feature-wise on par.
A basic fibonacci snippet
````
def fib(n):
    if n == 0:
        return 0
    elif n == 1:
        return 1
    else:
        return fib(n - 1) + fib(n - 2)

print(fib(30))
````
executes sucessfully, as does tests/micropython/viper.py.
The command line works as well. I haven't implemented a better use of registers > R7, as it was unclear for me what to change.
Ok, ARM is fine I'd say.

You're right that it should be thumb2, but I had no intention of supporting thumb (non 2) because it can't (AFAIK) do enough to be a general CPU.  Ie you need to switch back to ARM state to do some things.  So it would be ARM+thumb in that case.  In the current code, "thumb" means thumb2 exclusively, with no ability to switch to ARM mode.