sm: start implementing MSGs

Add SM_MSG_SEND_NACK to implement RNR
Compact sm_tx_t to fit in a cacheline
Fix tailq types for queued and pending sends
Make conn mutex errorcheck unless NDEBUG set
Add tx and rx get/put functions
Add write header to peer's fifo function
Implement handle_send()
Implement return_event()
Implement progress_queued() and progress_pending()
Implement ctp_sm_send()