added function declarations as part of the grammar, and updated the parser accordingly. There are some conflicts