o added the theory's name as a parameter to the theory visitor. Solves the clash in notation for when there are two
o added a notation for operator precedence
added type signatures