Added events to Agents, as well as a program controller class and vector types.