Thread change and add Agent class

The thread for updating the screen has been separated from the event
loop. This allows the background to continue even if the user moves
around the screen.
The Agent class has also been created with derives from the object
class. Future work will be made to create a more intelligent agent.