Started implementation of behaviors.

The agent interface was once again reverted to an abstract class 
because it's just far too useful to have some implementation on
the agent class.
Created message template matching in the message
class. This will be used by behaviors to filter messages.