This commit finally adds eventing to pilight

To define events a config object was added:

[...]
"rules": {
   "heater": {
      "rule": "IF sensor.temperature < 15 THEN switch DEVICE heater TO on"
      "active": 1
   }
},
[...]

pilight events rules all follow the same structure:
IF ... THEN ...

The usage of capitals is important in pilight rules and
should be strictly followed.

In between the IF and THEN a wide of logic can be placed.
A few examples:

IF sensor.temperature < 15 THEN ...
IF switch.state IS off THEN ...
IF switch.state IS off AND sensor.temperature < 15 THEN ...
IF (switch.state IS off OR switch1.state IS off) AND sensor.temperature < 15 THEN ...
IF ((sensor.temperature + sensor1.temperature) / 2) < 15 THEN ...

As you can see, pilight uses standard mathematical rules
for its own event rules. pilight supports an unlimited
amount and level of hooks. In regard to logic, the following
operators are supported: AND, OR, IS, +, -, *, /, >, >=,
<, <=, !=, ==

Event actions are places after the THEN. Currently two
actions are supported:
- switch: "switch DEVICE ... TO ..."
- toggle: "toggle DEVICE ... BETWEEN ... AND ..."

Both the actions and operators are modularly implemented.
Developers and users can therefor easily expand these
actions and operators without having to touch the core
eventing library.

The eventing library has been tested locally in some
extend, but we invite you to test them yourselves to find
possible bugs we didn't encounter.