magit-reset-soft: actually do a *soft* reset
magit-highlight-section: always set magit-current-section

In `magit-highlight-section' always update the value of variable
`magit-current-section' (previously named `magit-highlighted-section')
even when we don't actually highlight the new current section (because
it is the root section or to avoid shadowing the region).

If we don't do that, then the previously current section remains the
"highlighted" section and when we later go back to that section then
it isn't highlighted because we "didn't select another section".

To avoid confusion rename the variable to `magit-current-section'.
But note that it is still better to use the function by the same name
to determine the current section in arbitrary contexts, because if a
command changes point then the value of the variable might not be
correct until after `post-command-hook' and thus
`magit-highlight-section' has run.
magit-section-show: trigger highlight after delayed washing

When expanding a section involved creating its content (i.e when the
washing was delayed for performance reasons), then set variable
`magit-current-section' to nil to force `magit-highlight-section' to
highlight the complete section, including the newly inserted text.