new rules: enforce, trailingUndersoreAccess, strict

some tests refactoring, new tests, readme update
closes #4, closes #5