In this paper, we describe several interesting design decisions we have taken (with respect to inter-agent messaging) in the reengineered CASA architecture for agent communication and services. CASA is a new architecture designed from the ground up; it is influenced by the major agent architectures such as FIPA, CORBA, and KQML but is intended to be independent (which doesn't imply incompatible). The primary goals are flexibility, extendibility, simplicity, and ease of use. The lessons learned in the earlier implementation have fed the current design of the system. Among the most interesting of the design issues are the use of performatives that form a type lattice, which allows for observers, who do not necessarily understand all the performatives, to nonetheless understand a conversation at an appropriate semantic level. Furthermore, we found it difficult to arrange a portion of the FIPA performatives in a lattice without duplication and complexity. We solved this problem by diverging from FIPA performatives by separating a lot of the performatives into a separate lattice of acts, which work with the performatives, but greatly simplify and enhance the semantic interpretation of the messages. Yet another innovation is the addition of several new fields within a KQML-style message header that allow for further semantic interpretation of the message by an observer who does not necessarily understand the content language. The traditional FIPA fields to, from, sender, and receiver have been extended to include agent (the requester of a service), and actor (the party designated responsible for performing the action specified in the performative/act). These new design considerations add a great deal of flexibility and integrity to an agent communications architecture.