Made Source a base class and moved implementation to TestSource
added counters to check on parallel running