GetAllWith() now by default clears the list before adding entities. new argument allow caller to specify behaviour

Because, holy shit, I just spent too long trying to figure out the most
bizarre bug that was being caused by the list *not* being cleared and
I forgot that I had to with the way this was written originally!