Renaming BehaviorSource to EventSource

BehaviorSource was renamed to EventSource, to reflect the fact that it's
a source from an Event (more intent revealing).

Also, the constructor of EventSource was made private, and static create
methods were used to instead.