Straight rewrite to go.
Add cross platform builds