use threads to save resources

Specs are green, anything I'm missing ?

@alepulver