Making sure beforeFind is only triggered once per query

Hopefully fixes tests in debug kit :)
I took the chance to fix this that was bothering me before, I think queries should always return the same type of object. In the test it was returning an array, which could easily break applications where stronger type hinting is used.