Hand wrote binary serializers. Way faster....
Working?!?

Looks like the new version of the code generator may actually work after all.
There was one serious issue that slowed things down a lot which was it would try
all registers as the destination for multiplications where only EAX is a valid
one. There is now a function claimRegister that will attempt to claim a specific
subset of the free registers. This allows mul to fail early if EAX is not free.

Another optimization was backward jumps are now computed on the fly. This allows
for early failure of a branch as opposed to two pass which takes a long time. So
currently forward jumps take _FOREVER_ to compute.