Refactor status definitions so that status list is no longer required.

This makes it a lot easier for the grammar.