Added subscribe/unsubscribe so the processing and analysis don't do work while they're not visible anyway
Changed the way contacts are created, so they are less memory inefficient thanks to memory-profiler