Macro to generate a struct with all field Optional (partial!) and another macro to generate a patch (patch!).

ALPHA VERSION: DO NOT USE

more to come soon