Spy automatically promotes spied method call to an expected one

Before this commit, spies were unusable if you had defined any promise or prediction on the object
you were spying to. Because call still wasn't been marked as expected by Prophecy - it thrown an
exception during the `checkPredictions()` call. Should be fixed now.