moved all sprite socket actions to the sprite object so that they can be handled locally rather than searched for