Update Esprima, gather more info

But still no comments in generated source :(
Lots of experimenting, not a lot of actual result
Rethinking (almost) everything
Rethinking (almost) everything

SO MANY CHANGES
Passing some tests!

Failing another one...
Modules load themselves on-demand

Also made them a bit smarter about file paths
Removing unused functionality
Simplifying Group module a bit

- Well, maybe not really simplifying that much. Trying to make the
conditionals easier to follow certainly.
- Also some work on better turning directories into module names. Maybe
short CRC hashes would be better?
File extension is now configurable
Changed group template key

Still not sure I'm happy with it.
Started re-working main class

Added some tests as well
Bring some sanity to group dir values

By fixing the logic and adding tests
Actually remove template node from AST
Add generic lib module

Use it to centralize some repeated nonsense
Rename tests & stub out a missing piece
.gitignore styling
Improve some Module checks

Also code coverage of the tests
Removing redundant tests

Improving test code coverage
Tests for pathFixup

These didn't belong with the Group class tests now that it's shared
functionality
Module re-working

Now implicitly calls _load()
Remove group concept, modules shouldn't care what group they're in
Make validity check static, it doesn't need any special knowledge