Allow for using Riemann as a dependency (#881)
Allow for using Riemann as a dependency (#881)

* Allow for using Riemann as a dependency.

While using Riemann by writing a configuration file is perfectly fine
for most purposes, sometimes people (particularly Clojure developers)
might prefer to stick to their existing workflows that typically involve
a true project manager such as Leiningen or Boot.  These tools in turn
allow the users to make use of the dev tools they've come to depend on,
such as the REPL, linters, code formatters, etc.

This PR introduces a new entrypoint that is the "run" function.  Users
can then declare Riemann as a dependency, import the "run" function,
then simply start Riemann by calling the "run" function with a "setup"
function, which contains code that they would otherwise put into the
configuration file.

* Rename "run" to "run!" to indicate side effects

riemann/riemann,riemann/riemann,aphyr/riemann,aphyr/riemann