Enhancement to Erlang epp module to handle complex user defined macros