Added support for checking statements making use of syntax declarations and providing these declarations as part of the tests
Modified CallOrTree checking logic to instantiate type variables when winnowing down applicable functions, this fixes a problem with checking higher-order parameterized functions, also modified logic for type instantiation to handle this properly, resolves issue #335