Improve error reporting for :set commands in the prompt
Improve view reload after :set commands

This fixes cases like `:set commit-order = date` to reload log-like
views.
Force --topo-order when graph is enabled and no commit order is set

This is what `git log --graph` does to ensure that parent commits comes
before child commits. The test case is based on the example provided
by Benjamin Bergman in issue #238.

Fixes #238 and Debian bug #757692
References #300
Remove unused variable in run_prompt_command()