test plugin regex when registering the plugin, decline broken regexes

if a plugin with a broken regex would pass the test the output of the TE
would be very broken(likely empty)
add variables that define common character classes for use in plugin regexes

added:
 * TE_regex_varname
 * TE_regex_escape_method
TE_FOREACH_FILE: add support for lowercase variables
TE_FOREACH_INLINE: add support for lowercase variables
TE_IF: add support for lowercase variables
TE_SELECT: add support for lowercase varaibles
TE_SCALAR: simplified regex by making use of the previously introduced variables
new event log: finished log messages now trigger an event with the following signature: handler($msg, $success, $mode)
update TODO
update changelog