Added a payloads header specification

The payloads go off of what is defined on the Sansgrid website. Some
unions have been defined
Used a macro to specify unions in payloads

Not sure if I'll go back and hand-specify the unions yet
Cleaned up payload header a bit
Make sure union generator is #undef'd
Added hatching type, added enums for types

Hatching type has been added: router statically defines IP
Enums have been added for data types
Removed a Todo; for now, use uint8_t