Adding interfaces to limit IBehaviorScope

IBehaviorScope had a Map and a Coalese method that returned Events.
Since we want to keep the interface constrained to only what's required
to be a Behavior Source, interfaces were added that had the methods
required by the Behavior class.