public override void VisitEnter(AstNode node)
		{
			switch (node.Token.Name)
			{
				case "Document":
					_feature.Tags.AddRange(LoadTags(node));
					break;
				case "FeatureLine":
					_feature.Title = node.Children["Title"].Token.ValueAsString(_inputIterator);
					break;
				case "Background":
					_feature.Background = new Scenario();
					_feature.Background.Gherkin.AddRange(LoadGherkin(node.Children["Gherkin"]));
					break;
				case "Scenario":
					var s = new Scenario() { Title = node.Children["Title"].Token.ValueAsString(_inputIterator) };
					s.Tags.AddRange(LoadTags(node));
					s.Gherkin.AddRange(LoadGherkin(node.Children["Gherkin"]));
					_feature.AddScenario(s);
					break;
			}
		}
		public void AddScenario(Scenario scenario)
		{
			var items = (List<Scenario>)Scenarios;
			scenario.Feature = this;
			items.Add(scenario);
		}