Honor `cider-auto-jump-to-error` when `cider-show-error-buffer` is non-nil

Currently cider-auto-jump-to-error is honored only when stacktrace is not popped and error occurs in the current buffer. Fix both problems.
If we go on that road then `with-current-buffer` is not necessary at all because `set-window-point` does the whole job anyways. I have done that. 

I also just discovered that if the error is in a different file cider jumps to a wrong location in the current buffer. You can reproduce this with `C-u C-c C-k` from a different file.  The problem is that the heuristic in `cider--find-last-error-location` is wrong. Note that the info from the error message is parsed correctly, so we just need to jump to correct file. If you accept the change in #763 the fix is straightforward ;)