Added support for empty rules

Empty rules are a frequent feature of models, so it seems easier to directly support them when parsing and cnfizing.

I still need to look in to the cnfizing algorithm a bit, but wanted to get this done to make comparison easier (needed in the future anyway).