ClientHandler code validates requests before sending them to nodes to perform those requests. (Ie, we check if the app has permission to do XYZ.
DataHandler has the data (teh client handler cannot see this), and checks final permission on the data itself for a given request, and returns it.
Authenticator is the user-space application which controls the account, provides application’s with credentials to work on the network (currently keys which are checked at CH, the proposal changes that to be bearer-token based)