core: msg_receive should yield

If a thread sends blocking, but the target thread is not currently in
receive mode, the sender gets queued. If it has a higher priority it
should run again as soon as the target goes into receiving mode.
Merge pull request #1835 from OlegHahm/msg_receive_yield

core: msg_receive should yield