fix nested arguments to functions
a bit of new pattern matcher functionality (..@)
some cleanup
some documentation
GPL->LGPL