Implement q: for editing ex commands (fix #293)
Make q: commands go into evil-ex-history
Improve the command-line window key prefix

It now uses line-prefix instead of margins, and text properties instead
of overlays. It also works (almost) correctly with "o" and "O".
Minor documentation fixes
do not reuse `evil-ex-command` for parsed command string (fix #410)

The parsed command string is now stored in `evil-ex-cmd` and
`evil-ex-command` is only used for the final symbol representing the
binding. Otherwise the double usage of this variable interferes with
completion-at-point (in `evil-ex-command-completion-at-point`).
merge request #64