magit-show: add argument SWITCH-FUNCTION

Add new argument SWITCH-FUNCTION replacing SELECT and PREFIX.
See doc-string for more information.
magit-show-file-revision: use pop-to-buffer

... instead of `switch-to-buffer-other-window'.
magit-show: better buffer names

Don't cut of parts of a branch name that contains "/".  Instead replace
that that with ":", as that doesn't do any harm in filenames and also is
not a valid character in branch names (and therefor isn't ambitious).
magit-show: rename arguments
magit-show: only create new buffer if needed
magit-show: cleanup
magit-show: more cleanup
magit-show: absorb magit-show-file-revision

Instead of two commands that each provide useful defaults for REV and
FILE that the other function does not provide, merge the two commands,
which can now more often provide useful defaults.  Most people probably
didn't know about the removed command.  I did but I never used it since
there was no key binding and because I wouldn't have been able when to
use switch command anyway.
Merge branch 'pr/magit-show'