New features

I implemented some new features that I think could interest other people. So finally I had a bit of time to merge the latest changes with mine and share this back with the community. The interesting commit to look at is this one:

- Added support of lists and dictionaries passed arguments to macros …
- Added support of python expressions
- Added concept of template contexts

You would need to look at the changes in the documentation to see what all this does.

Thanks!