[IO] add FutureError and throw it when wait is called on a Future with callback
The wait() call on a Future with callback currently will never return therefore calling wait() is disallowed.
The wait() call on a Future with callback currently will never return therefore calling wait() is disallowed.