WIP don't use when there is no ELSE

Magit contains many `if`s without an `ELSE` part. There are even some wrongly intended cases that make you think that there is an `ELSE` part when there is not, or the other way around.

@sigma So I would like your permission to merge fix that. This patch is incomplete, I would like to know what you think before I continue working on it. If I get your okay I will do the same for all files and then review every change, nil.

Changes include:
* use `when` when there is no `ELSE` part
* use `unless` when the condition was additionally wrapped with `not`
* use `and` instead of `when` in some places
* do NOT touch `(if COND THEN nil)` or `(if COND nil ELSE)` for now. Being explicit like that makes sense in some but not all cases.
* fix indentation
* in a few cases put (very short) `COND`, `THEN` and `ELSE` on the same line
* other stuff like the above