public void AddObject(Type T, MultiTypeListObject obj)
 {
     dict[T].Add(obj);
     if (CheckList(dict[T]) == false)
     {
         dict[T].Remove(obj);
         throw new ArgumentException("Attemted to add a " + obj.obj.GetType().ToString() + " to a list of " + T.ToString());
     }
 }
 public void RemoveObject(MultiTypeListObject obj)
 {
     dict[obj.obj.GetType()].Remove(obj);
 }