This is just a tiny bug, but it's still in there so I figure I might as well report it.
Scenario: I am training Umberdroth in a city. I have 3 units queued up. An enemy destroys the improvement. I am still able to train the remaining umberdroth in the training queue.
I guess the expected result would be that when I lose a required improvement connected to the city, the training for units that require that improvement is cancelled.