new public void Insert(int index, Template val)
		{
			if (_package != null) {
				val.SetPackage(_package);
			}
			if ( this.Contains(val) ) {
				this.Remove(val);
			}
			this.Insert(index, val);
		}
		new public int Add(Template val)
		{
			if (_package != null) {
				val.SetPackage(_package);
			}
			if ( !this.Contains(val) ) {
				return base.Add(val);
			}
			return -1;
		}
		public CodeGenerator(string baseFolder, Template template) : this(baseFolder) {
			_template = template;
		}
		public CodeGenerator(Package package, Template template) : this(package) {
			_template = template;
		}