The resulting binary is pretty big due to lacking optimizations (probably because of interfaces), so that should be fixed.
The sync package is strongly tied to the runtime, so it's easier to implement a new one. Besides, it's pretty big so it's better to replace it.