initial checkin
More unit tests

And a bin utility that exercises more of the system
And removing untestable code from libs
finish testing expansions
Remaining easy tests

The rest will require code restructuring, or other testing techniques (eg opening a test file)
gem generation
More tests
Disallow parsed rules without any tables
New Rule parameter: "has_primitive"

Do not evaluate/add a rule if it requires a non-existent primitive.
Merge on top of nil tables
Handle multiple tables properly
Merge branch 'F/handle_multiple_tables' into devel
Add port to comment in custom services
Merge branch 'F/custom_service_port' into devel
Option to ignore comments in output and comparison
Merge branch 'F/ignore_comment_differences' into devel
dynamically assign gem version from CHANGELOG
Optionally ignore comments

This is useful for comparing firewalls, if comments are the only differences.
Some corner cases are still missing.
Also ignore comments of children
Merge branch 'F/recognize_comments' into develop
Do not output nil tables

For example, no more of this:
*nat
COMMIT