On the fly syntax checking for GNU Emacs (aka "flymake done right")