Lib quite finish, only stay Gen.WriteTo and WriteToTest function to implement.
Maybe a small benchmark and more edge case test (returned errors are still untested).