Name change
Added rule.py class and mostly of the full initial implementation. Added much testcode in core.py for rule.py that should be moved to testsuite later when that is implemented.