sending and receiving messages
passing objects around