Switched classes to structs.
Make sure to error out when a type is undefined.
Added todo items.