* ref(source): use testify with mocks in test code
* fix: re-introduce NewMockSource for convenience
* fix: avoid circular dependency
* ref: increase usage of testify
* chore: vendor testify as a dependency
* fix(*): cleanup testify expectations
* feat(source): promote MockSource to source package
* feat(source): add MultiSource to merge other Sources
* feat(source): make structs and members of multiSource private