This implements the core of a Participant to manage the majority of the mundane functions allowing the user to start writing the agent's behaviours sooner.
Participant
A class implementing this can provide EnvironmentServices
EnvironmentService