API function AddAgent() allows an invalid policy ID
Currently, the AddAgent() function of the API allows the use of a policy ID that does not exist. This causes the agent's policy to be nullptr. The program will then crash at the first simulation step after that.
To fix this, we should do one of the following:
a) Let AddAgent() refuse to add the agent if the policy is invalid. The function should then also return false.
b) Allow an agent's policy to be nullptr. This probably requires many if-checks throughout UMANS, because the code currently assumes that each agent has a policy.