make sure per collector only one collect() at a time

not thoroughly tested yet. should fix #203, maybe