added behaviour
added behavioural semantics
added behavioural semantics and cleaned