Remove optional arguments from else() and end*() commands

This adds a brief explanation of the optional condition in the `else()`
and removes all legacy usages of `else()` and `end*()` commands.
18 files changed