Twostage compiler

Separate the LLVM bitcode generation and compilation parts
This allows to development+generation on Windows and perform (cross) compile on Linux/Mac