movement handling, sending, and more client structure