OneTimeDesires now stay on the entity until they're actually finished.

Earlier they were removed when they got stopped, which might also occur
when a desire with a higher priority should execute. However, the
OneTimeDesire might not be done yet, thus it will now check that before
removing it.