Improved support for rules

* replaced rule parser
* added support for
  * mixed 'and' 'or' rules
  * parentheses
  * duration in date rules
  * value types
* added values validation
* capable of handling invalid rules providing explanatory error messages