Add collect API interface and sample collector/tests
Merge remote-tracking branch 'remotes/origin/collectors-sp' into lucinq30
Merged other branches