Adds goals to agent and sanitizes the code.
Adds transitions and rewards.
Changes classes architecture.