struct{} idioms

This change set applies two idioms that use the type `struct{}` as an easy optimisation.
Please refer to the individual commit messages for more information.