[Fix #8] Add code refreshing command

A simple command, which simply evals `clojure.tools.namespace.repl/refresh`.
Add timeout to sync requests

Sync requests are useful only for short running computations.
If no response is received in a few seconds it's a pretty safe bet
something blew up and the request is unlikely to ever yield a result
(freezing Emacs in the process).
Merge pull request #625 from jeffvalk/master

[Fix #613] Add clojure.test integration.
[Fix #626] Enable `cider-test-run-test` on any Clojure buffer.

Previously this command was only enabled in the report buffer and on
tests that had previous failures/errors.

This requires `clojure-mode`
[#238](https://github.com/clojure-emacs/clojure-mode/pull/238).

Also, update context menus and key binding documentation.