Grammar.py: add assertion that name must be 'lambda' if we're adding bound variables, add note about this in the documentation for add_rule
GrammarTest.py: add back previous main method
fix FiniteWithoutBVArgs grammar so that name is 'lambda' for bound variable rule; fix log_probability_age() to accurately check for bound variable