- Added hack @@/2 to preserve comments surrounding a given term.

- Added documentation of expand/5
Fixed formatting problems.
Fixing perform_substitution, is a bit kludgy