added sender/receiver type constraints to messenger.messages