~technomancy/fnlfmt

Add new fnlfmt pretty-printing macrodebug module

This introduces a new macro module containing the following:
* pretty-macrodebug - Same as macrodebug, but uses fnlfmt pretty-print
* inject            - Patches the fennel's macrodebug, with fnlfmt's
* restore-default   - Get back the original!

This allows pretty-macrodebug to be imported and used as a normal macro,
with the option to install it directly into your REPL environment for
easy macro development.
Avoid trailing whitespace on binding vectors too.
Support adding line breaks in, not just indentation.
make cli standalone

This makes the fnlfmt executable standalone, so it can be moved or
symlinked to without having to mess with package.path.

The executable here was compiled with a Fennel 0.4.1-dev version with
the recent changes to `include`, which gives more readable output than
older versions.
add support for stdin via `fnlfmt -`
Test cases are just single files now, not pairs.
Improve comment detection.

We can at least tell the difference between a semicolon inside a
single-line string and a semicolon that's either a comment or inside a
multi-line string now.
Some nicer comments.
Docstrings and comments.
Use body-style for doto.
Test for backslashed quote inside a string.
Rename module to fnlfmt.
Ignore delimiters inside comments.

(This will catch some false positives that aren't actually comments.)
Add a test for delimiters inside strings.
Don't indent empty lines.
Initial commit.