It is obvious that the system heavily relies on protection of the communication and the authenticity of both sender and receiver of the messages. It can be entirely subverted by manipulating the communication channel. One can argue that the individual components should not rely on the underlying mechanisms of the computer host for the provision of security services, but that these should be an integral part of the specification of the APIs. For authentication especially, this would have the advantage of being able to identify the components rather than the hosts they are implemented on. The individual components are also in a better position to perform integrity checks on the received messages, as they know the expected formats. This approach of course to some extent shifts the problem to securing the APIs.
The idea of signalling and polling at regular time intervals addresses denial of service attacks; authentication and integrity checking may be embedded as part of the components, which could rely on authenticated communication handlers for the encryption of exchanged messages.