The module structure, type naming, etc. is all derived from bevy 0.7 - this needs to be updated to reflect the idioms of bevy 0.9.