Fix replace_in_string
Add a special "PWD" value.

PWD holds the absolute path of the directory of
file currently being parsed
Add a keys() method that returns a list of all the declared identifiers
Introduces *= operator

*= operator appends the right value to a list if
that value is not already in the list.
Create the list if it does not exists already.
Fix a bug when calling a function with doted varable as parameter
Update generated files