Merge branch 'release/v0.1.5' into develop
First draft of a clojure front end to drake

Add the clj-frontend ns and convert drake.core/configure-logging into a
public function.

A serious downside to the code in this commit is that some of it is copy
and pasted out of the relevant functions in the parser ns, leading to
code duplication.  This will make it harder to alter the parse tree in
the future because changes will be needed in both parser and
clj-frontend.  A cleaner option would be to rewrite parser so that it
delegates to clj-frontend when it actually wants to modify the
parse-tree.  Unfortunately, I don't understand fnparse well enough to
know if this approach would be possible.
Shorten fn names and reverse infiles and outfiles

Now outfiles come before infiles and the method names are shorter, e.g
method-step instead of add-method-step.

Add a function add-methods which can add methods in bulk to the
parse tree.

Rename opts to options in step, method-step, cmd-step and method.

Rename opts to run-options in run-workflow.

Update the example to reflect some of these changes.
Add variable substitution
Clean up code and add tests

Move helper functions into clj-frontend-utils ns.

Fix several problems in variable substitution.

Add tests.
Move test helper functions to utils

Move helper functions from clj-frontend-test to clj-frontend-utils.

Stop removing whitespace fron the parse-trees in tests, just add a bit
of whitespace to the beginging of the clj-frontend commands when
comparing the output of clj-frontend to drake/parser in tests.
Add a method test and support method options
Add off-base test
Merge pull request #123 from morrifeldman/feature/clj-frontend

First draft of a clojure front end to drake
Add repl feedback to clj-frontend using EventBus

Subscribe to EventBus events display results in the repl while a
workflow is running.  The current implementation subscribes to all
events.  A future implementation may just subscribe to the superclass
and respond differenty to each event type in order to minimize the
interop code.
Move EventBus code into clj-frontend-utils
Add tests and cleanup for clj-frontend/EventBus

Add a test to make sure that clj-frontend with EventBus is working.

Clean up the code a bit and add some comments.
clj-frontend/run-workflow run automatially

Make :auto true a default in clj-frontend/run-workflow.  The :preview
true option trumps :auto true, so we can safely use :preview true to get
a preview without the workflow running.
Merge pull request #124 from morrifeldman/feature/clj-frontend-event

Add repl feedback to clj-frontend using EventBus
Add demos/clj-frontend and change some names

In addition to adding a demo, this commit also modifies clj-frontend by
changing the workflow function to new-workflow and changing the function
input parse-tree to w-flow.  Changing parse-tree to w-flow seems to
better hide the implementation details of a workflow from users.
Delete LICENSE from demos/clj-frontend
Merge pull request #125 from morrifeldman/clj-frontend/doc

Add demos/clj-frontend and change some names
make variable substitution work in command substitution
Merge pull request #130 from calfzhou/var-sub

make variable substitution work in command substitution
Prep for release v0.1.6